Подтвердить что ты не робот

Является ли DVCS полезным для одного разработчика?

Или будет ли более целесообразным использовать обычный VCS клиент-сервер? В настоящее время я использую TortoiseSVN, но меня интересует DVCS, но я не уверен, что даже неплохо попытаться использовать что-то подобное этому соло.

4b9b3361

Ответ 1

Так как вы все еще можете нажать на другую машину, также использующую Git/Mercurial/Bzr/etc, у вас все еще есть безопасность резервного копирования с несколькими компьютерами, которую вы, надеюсь, имеете в любом случае. Однако, если вы когда-либо код во время путешествия, имея полный доступ к репозиторию, может быть огромным плюсом, а затем просто повторите синхронизацию с вашим сервером, когда вы снова подключитесь к сети/получите домой/etc.

Ответ 2

Да. DVCS, на мой взгляд, еще лучше подходит для сольного развития, чем традиционная серверная система. Многие функции серверных систем - это просто лишние осложнения, когда есть один разработчик.

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

Ответ 3

Я думаю, да. Во-первых, он масштабируется намного лучше, если вы используете несколько компьютеров, потому что слияние намного проще. Во-вторых, вы можете совершать оффлайн, что хорошо, в целом.

Ответ 4

Я серьезно рекомендую пойти с распределенным. В Windows я выбрал Mercurial и был очень доволен этим.

Большие профи:

  • Локальные коммиты бывают быстрыми, могут часто фиксироваться (Test, Code, Refactor, Commit)
  • Ветвление прост
  • Вы можете совершать все, где бы вы ни были.
  • Просто перемещать файлы (не более беспорядок, как я использую для входа в SVN)
  • Просто проще. Одно программное обеспечение делает все (включая задачи администратора)
  • Файловая система более чистая. Больше .svn везде, только одна папка
  • Список игнорируемых файлов - это еще один файл в репозитории и автоматически копируется на каждый клон. Легче сохранить чистоту, чем SVN снова.
  • Bitbucket.com хорош и дает один бесплатный приватный репозиторий

Минусы:

  • (Для некоторых) инструментов GUI не существует
  • Вам, вероятно, потребуется SVN для подключения к различным исходным репозиториям. Например. необходимо использовать две системы.

Ответ 5

Да. Есть две основные причины, по которым я переключился на DVCS (Git и Mercurial) для моих собственных проектов хобби. Во-первых, проблема сохранения резервных копий, а другая заключается в том, что я много путешествую и использую несколько географически раздельных компьютеров.

Быстрое и простое резервное копирование

Я работаю как минимум с двумя клонами репозитория. Один из них - очевидный локальный, который с моей рабочей областью, другой - тот, который я сохраняю на своем файловом сервере (или в онлайн-репозитории, таком как github или bitbucket), что я буду сбрасывать, когда я закончу работу локально. Создание резервной копии так же просто, как синхронизация репозиториев, другими словами, нажатие ваших изменений вверх по течению.

Работа в разных местах или компьютерах

Это, вероятно, то, что является менее распространенным сценарием для разработчиков с хобби проектов, потому что я, как правило, путешествовать. Помимо моего компьютера дома я иногда останавливаюсь у своих родителей, где я храню свой старый компьютер (который достаточно моден для программирования хобби). Всякий раз, когда мне хочется взломать новые функции, я могу сделать это на этом компьютере, а затем просто синхронизировать репозитории, чтобы получить эти изменения, когда вернусь домой.

Легкое разветвление/слияние

Не секрет, что DVCS обрабатывает разветвление/слияние довольно автоматически. Конфликты слияния происходят, но даже без централизованных средств управления версиями, например. Subversion, на самом деле не очень помогает в слиянии даже в простых сценариях. Хотя я не использую эту функцию, что часто для личных проектов есть некоторые разработчики, которые это делают.

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

Ответ 6

Для одного разработчика каждый VCS будет делать. Я бы выбрал один, который легко настроить и не требует совсем никакой конфигурации. Мне лично нравится Monotone. Это был один из первых, и я все еще считаю его одним из лучших.

На самом деле, самое забавное, что я когда-либо имел, это использовать darcs, но он написан на довольно уродливом языке (Haskell) и на самом деле было уже довольно больно строить его на Mac OS X из источника.

Git называется хорошей системой, но мне не нравится, что он состоит из нескольких двоичных файлов и скриптов и т.д. Что мне действительно нравится в таких системах, как darcs и Monotone, есть один двоичный файл... и это. Нет беспорядка двоичных файлов, нет скриптов на том или ином языке, в двоичном формате, и он делает все это.