Как мне использовать Mercurial как одинокого разработчика? - PullRequest
62 голосов
/ 10 ноября 2008

Я решил, что хочу использовать Mercurial для небольшого личного проекта.

Большая часть справки, о которой я читал, рассказывает о слиянии изменений между несколькими пользователями. Поскольку я один, этого не произойдет.

Должен ли я иметь несколько репозиториев? Мой компьютер для разработки уже еженедельно копируется на мой домашний сервер Windows, поэтому не представляется полезным иметь второй репозиторий в другом месте только для целей резервного копирования.

Должен ли я ветвиться каждый день? Или только вокруг релизов? Или когда?

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

Ответы [ 13 ]

0 голосов
/ 19 февраля 2009

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

0 голосов
/ 17 ноября 2008

SCM - это своего рода «умное» расширение буфера отмены вашего редактора. Вы можете вернуться назад, вы, возможно, решили проблему, но удалили ее, потому что она была подвергнута рефакторингу, но вам потребуется решение снова и т. Д. Настройте визуальную разницу, и она сообщит вам, что вы изменили с момента последней За последние два дня я постоянно проверяю свой код и изменяю его, если мне не нравится мое старое решение.

Ветвление работает на потоках: когда вы начинаете двигаться в одном направлении, но вам нужно больше думать, а тем временем вы хотите работать над чем-то другим, тогда это может помочь.

Имейте в виду, что DVCS обрабатывают хранилище как единое целое. Вы можете фиксировать файл за файлом (используя фильтры), но они сохраняют изменения для всего хранилища. Это сбивает с толку пользователей cvs (svn), где изменения в отдельных файлах более регулярны.

0 голосов
/ 10 ноября 2008

Я думаю, это зависит от того, поддерживаете ли вы существующее приложение и , добавляете функции (или исправляете большие ошибки) одновременно.

Таким образом, вы можете исправлять ошибки в основной ветке при создании новой функции в своей собственной ветке.

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

Я согласен, что это отдельная проблема с резервными копиями.

Удачи,
Рэнди Стегбауэр

...