Поможет ли мне Mercurial работать с 2 ПК? - PullRequest
3 голосов
/ 22 января 2010

В настоящее время я использую Perforce для управления исходным кодом, но хочу начать работу над кодом с 2 разных ПК одновременно (настольного компьютера и ноутбука). Ноутбук не сможет получить доступ к серверу Perforce очень часто, что делает Perforce плохим выбором в этой настройке.

Инструменты распределенного управления исходным кодом, такие как Mercurial, кажутся более подходящими для этой задачи, но я до сих пор не уверен, сработает ли это или нет. У кого-нибудь есть опыт использования Mercurial для работы на 2-х машинах одновременно (например, настольный компьютер в неделю, ноутбук в вечернее время и выходные дни). Помогает ли это, или это все еще боль, но все время синхронизируется и знает, что происходит?

Ответы [ 3 ]

5 голосов
/ 22 января 2010

Да, я делал это в течение последних 2 лет между моим рабочим компьютером и домашним компьютером. Вы можете использовать Mercurial или Git, они оба довольно хороши. Я предпочитаю Mercurial, потому что он опирается только на Python, который действительно легко установить на Windows, Linux и Mac OS X.

Кроме того, поскольку в основном вы работаете над проектом, проблем с конфликтами не будет.

2 голосов
/ 22 января 2010

Mercurial идеально подходит для этого типа установки. По сути, на каждом компьютере есть полная копия всей истории изменений, и если вам нужно разветвить или пометить выпуски, вы можете сделать все с вашим локальным хранилищем. Затем все, что вам нужно сделать, это вернуться в удаленный репозиторий, когда вы закончите работу на одной машине. Удаленный репозиторий может находиться на стороннем сайте (например, bitbucket ), или вы можете свернуть свой собственный с помощью SSH или общих файловых ресурсов. В любом случае это просто настроить. Недавно я написал в блоге , как заставить Mercurial запускать репозиторий на основе HTTP под Nginx с FastCGI (Ubuntu 9.10).

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

Просто убедитесь, что вы извлекаете изменения из репозитория, прежде чем начинать свою работу, а затем отодвигаете их обратно, когда закончите. Синхронизация двух машин довольно проста. Тем не менее, я рекомендую изучить инструменты командной строки, даже если вы планируете использовать TortoiseHG или какой-либо другой подобный клиент, потому что с командной строкой легче работать в некоторых ситуациях.

1 голос
/ 22 января 2010

У меня нет опыта работы с mercurial, но с git.Мой опыт очень хороший.DVCS очень подходит для такой ситуации, как ваша.Большинство действий можно выполнять в автономном режиме, поэтому при работе на ноутбуке проблем не возникнет.

После повторного подключения вы просто синхронизируете все данные и работаете на другом компьютере..

...