Нужен ли контроль версий для небольшой группы разработчиков (1-2 программиста)? - PullRequest
163 голосов
/ 09 сентября 2008

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

Более конкретно, я работаю в отделе, в котором обычно есть два разработчика PHP, использующих общую среду. Он утверждает, что у нас нет никакой добавленной стоимости, если Subversion установлен в нашей системе разработки, тогда как я утверждаю, что иногда приятно иметь возможность откатиться назад, чтобы увидеть предыдущий код, особенно когда возникают необъяснимые ошибки, которые трудно определить указать в некоторых из классов.

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

Ответы [ 45 ]

2 голосов
/ 15 сентября 2008

попробуйте mercurial (hg) вместо svn

2 голосов
/ 18 сентября 2008

вам нужен контроль источника, если верно хотя бы ОДНО из следующих условий:

1) более одного разработчика

2) проект более ОДНОГО месяца

3) в проекте более 5000 строк кода

Итак, если вы два человека, вам нужно использовать контроль версий. Также, если вы один, но ваш проект достиг нетривиальной сложности ... вам нужен контроль версий!

1 голос
/ 25 сентября 2008

Да, контроль источника является обязательным.

Я использую Sourcegear Vault , которая бесплатна для одного разработчика.

1 голос
/ 19 сентября 2008

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

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

1 голос
/ 16 сентября 2008

Я просто добавляю это, но я верю, что PERFORCE свободен до 2 разработчиков. Не знаю, как это легко настроить.

Полагаю, вам нужно что-то, что легко настроить и использовать.

1 голос
/ 18 сентября 2008

Оригинальный инструмент 'rcs' все еще существует и работает (на Unix и Windows / DOS) и, возможно, является самым простым из этих инструментов, поэтому я рекомендую его для команды из двух человек, работающей над та же система (например, тот же офис, тот же файловый сервер или хост Unix). Стоит войти в модель клиент / сервер, такую ​​как subversion, только если вы работаете в разных средах.

0 голосов
/ 11 сентября 2008

Контроль исходного кода не стоит ничего, кроме времени его настройки. Это просто ежу понятно.

0 голосов
/ 14 декабря 2010

Рассмотрим распространенный случай, когда, например, исправления были применены к некоторым нестабильным функциям "A" в течение нескольких месяцев. Разработчик (и) редактировал несколько файлов во время этих нескольких попыток, и хотя функциональность «А» была исправлена, но другая функциональность «В» была нарушена. Это обычно реализуется через некоторое время, и можно только напомнить, что функциональность «B» работала в определенный момент времени. При наличии контроля версий все, что должен / должен сделать разработчик (и), - это пройти предыдущие ревизии и достичь ревизии (версий), которая разбила букву «В», и просто отменить эти части. Использование простого деления и правила для получения версий ошибок делает его таким быстрым (если текущая версия - 2000, проверьте на 1000 - если она там работает, проверьте на 1500 ...).

В отсутствие контроля версий разработчик (и) должен / должен хотя бы подумать о том, как заставить его работать снова, и, следовательно, должен тратить свежее время на то, на что было потрачено полное время , Теперь, это может быть одной из черт функциональности проекта, и даже один разработчик может забыть точные спецификации. Итак, поиск спецификаций необходим, а что нет?

Мне часто приходилось сталкиваться с некоторыми 1007 * опытными разработчиками в голове, которые не использовали контроль версий в проекте, над которым они работали, и позже мне пришлось применить некоторые исправления в том же проекте. Один из таких разработчиков чувствовал себя ленивым, настраивая SVN и поддерживая его, и, кроме того, он не сказал мне должным образом, когда я спросила бы его , как именно это работает (когда меня назначили на работу), потому что он будет занят другим проектом.

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

0 голосов
/ 13 сентября 2008

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

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

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

  • Кто отвечает за управление хранилищем?
  • У вас есть расписание релизов? Как вы сообщаете слияние изменений?
  • В чем разница между вашим текущим управлением исходным кодом (файлы, копии в файловой системе) и тем, чего вы хотите достичь с помощью Subversion? (Подсказка, если у вас нет четкого ответа, не используйте его).
  • Насколько конкретно ваше использование Subversion будет включено в ваши планы управления проектом?
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...