Mercurial ненадежные суб-репо.Любая альтернатива? - PullRequest
2 голосов
/ 28 июля 2010

Я пытаюсь любить ртуть, но сводит меня с ума.

Я перехожу из SVN в нее, думая о перспективах улучшения рабочих процессов. Кроме того, я использую git в контрактной работе, поэтому я получаю всю распространенную идею. Я выбрал Mercurial для обещания большей простоты и лучшей поддержки Windows.

Сейчас я сольный разработчик, работаю над проектом, который скомпрометировал 5 отдельных репозиториев. Некоторые коммиты являются глобальными, а другие применяются локально к каждому.

Обычно я фиксирую каждое отдельное репо, затем начинаю толкать / толкать от корня.

Но я обнаружил, что:

  • 2-х головная вещь. Есть способ отключить это навсегда?

  • Ни один из графических интерфейсов действительно не подходит для моего рабочего процесса (я использую MacHG, TortoiseHG и пробую другие программы с половинными попытками). Мне нужно вернуться к командной строке для работоспособного поведения push / pull. Никакой GUI не понимает subrepo, не понимает, что проблема с 2 головами, поэтому мне нужно исправить / объединить в командной строке.

  • Но хуже всего то, что субрепо слишком ненадежны. Почти каждые 2-3 дня я получаю "abort: неизвестная ревизия ****". Иногда шестнадцатеричное значение имеет «+» в конце. Другие нет.

Иногда это ЕДИНСТВЕННОЕ изменение в репо.

Я не хочу исправлять это поведение, я хочу рабочую замену subrepo, которая позволила мне:

  • Фиксация каждого суб-репо
  • В конце нажмите + потяните, автоматически объедините все, что имеет смысл ... и, если лучше, работайте с доступным GUIS.

1 Ответ

0 голосов
/ 28 июля 2010

Вы немного запутались в моем скромном мнении. Mercurial и GIT распределены по всему контролю, поэтому хранилище всегда ... одинаково.

У вас есть собственная копия хранилища со всей историей. Нет "sub" -репо.

Все репозитории являются "равноправными", и вы можете использовать их для клонирования, чтобы выполнить "суб" разработку. У каждого разработчика должен быть хотя бы один одноранговый репозиторий.

Взгляните на этот хороший урок http://hginit.com/

Надеюсь, это поможет

...