2010-07-27 3 views
2

Я пытаюсь любить меркурий, но меня заводит.Mercurial ненадежные субрепозиции. Любая альтернатива?

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

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

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

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

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

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

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

Иногда это ТОЛЬКО изменение в репо.

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

  • Commit каждый суб репо
  • В конце концов, толчок + тянуть, automerge все, что делают смысл ... и если работа с доступным GUIS лучше.
+0

Вы случайно хранящей свои клонам в любом типе инструмента синхронизации, как Dropbox или подобные? Кроме того, вы пытались отключить антивирус для своих клонов? –

+0

Нет, у меня есть обычная папка. У меня нет AV (также это случилось и в OSX) – mamcx

+0

Можете ли вы объяснить функцию \ роль наличия 5 отдельных репозиториев для одного проекта? –

ответ

-3

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

У вас есть своя копия репозитория со всей историей. Нет «sub» -repo.

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

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

Надеется, что это помогает

+0

subrepos - относительно новая особенность mercurial, несколько эквивалентная svn :: externals. Я думаю, что OP правильно ссылается на них http://mercurial.selenic.com/ wiki/subrepos –

+0

Нет, на самом деле mercurial ввел suprepos. Я еще не работал с ними, но посмотрю их [сайт] [1]. [1]: http://mercurial.selenic.com/wiki/subrepos – Axel

+0

Спасибо за ваши комментарии! В любом случае, я читал: «Поскольку это сложная новая функция, существует ряд грубых ребер. Большинство команд, таких как diff и status, в настоящее время полностью не знают о субпозициях. В настоящее время только обновление, фиксация и push являются подчиненными.» Поэтому эту функцию можно оценить с осторожностью – daitangio

Смежные вопросы