Мне действительно нужно управление версиями? [закрытый]

47
задан 7 revs, 6 users 30% 23 May 2017 в 12:30
поделиться

29 ответов

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

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

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

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

Теперь необходимо объединить его в происходящую работу для существенного изменения. Что Вы изменяли для срочной работы? Вы работали слишком быстро для хранения примечаний. И Вы не можете просто разность эти два каталога легко теперь, когда у обоих есть изменения относительно базовой линии, с которой Вы запустили.

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

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

Для сольной работы, Подрывной деятельности или Мерзавца рекомендуется. Любой свободен предпочесть один или другой, но любой ясно лучше, чем не использование любого управления версиями. Хорошие книги" Прагматическое Управление версиями с помощью Подрывной деятельности, 2-го Выпуска " Mike Mason или" Прагматическое Управление версиями Используя Мерзавца " Travis Swicegood.

117
ответ дан 3 revsBill Karwin 26 November 2019 в 19:07
поделиться

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

0
ответ дан 2 revs, 2 users 57%6eorge Jetson 26 November 2019 в 19:07
поделиться

"Мне действительно нужно управление версиями?"

Да. Если Вы не пишете идеальный код, который никогда не должен изменяться.

пример: у Меня было требование. Я создал веб-страницу, провел приблизительно один день на странице, это - Раздел 508 совместимости (это было приблизительно 6-7 лет назад), и загрузил на веб-сайт. Затем требование было изменено решительно. Я провожу другой день, работая на странице (и Hayuge, который файлы Excel не преобразовали в доступный HTML легко). Приблизительно неделю спустя, клиентские переключатели просит, чтобы мы вернулись к Версии A. Управление исходным кодом выполнило бы в этом приблизительно 10 минут. Как это было, я должен был унести другой $ % #^^& $ # день на задаче.

0
ответ дан Pulsehead 26 November 2019 в 19:07
поделиться

Хотя старый и сырой, мы нашли, что Microsoft Visual SourceSafe работает. Это работает отлично для хранения истории версий. Если Вы не к взволнованному о ветвлении, которое, будучи сольным разработчиком Вы не можете, оно могло бы просто отвечать всем требованиям.

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

0
ответ дан Natron 26 November 2019 в 19:07
поделиться

Я думаю, что Вы приняли правильное решение использовать некоторое управление версиями. Для простоты я пошел бы с SVN (проигнорируйте CVS, поскольку SVN является в основном "лучшим" CVS)

, SVN может работать с "локальными" репозиториями прямо в файловой системе и в большом количестве платформы, таким образом, Вы не должны откусывать слишком много в инфраструктуре (серверы, сети, и т.д.)

Большой ресурс для SVN: http://svnbook.red-bean.com

я не знаю много о МЕРЗАВЦЕ, но этом являющийся открытым исходным кодом и получаю много доли завоеванного внимания, вероятно, имеет много подобных преимуществ!

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

Счастливое управление версиями!

0
ответ дан 26 November 2019 в 19:07
поделиться

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

, Который несущественно, причина, почему мы не изменились на Хранилище SourceGear. Это не может сделать этого. Мы все еще ищем SourceSafe-совместимую замену для... хорошо, SourceSafe. Несмотря на то, что все говорят, это еще не подвело нас*

*, это может просто быть вопросом времени.

1
ответ дан Bob Moore 26 November 2019 в 19:07
поделиться

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

1
ответ дан Brian 26 November 2019 в 19:07
поделиться

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

1
ответ дан mxcl 26 November 2019 в 19:07
поделиться

Должен должен, должен, должен, должен, должен. Необходимо использовать управление версиями.

Это имеет самое глубокое значение.

, Если Вы не понимаете, почему теперь, Вы будете однажды.

1
ответ дан Ali Afshar 26 November 2019 в 19:07
поделиться

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

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

1
ответ дан CYBRFRK 26 November 2019 в 19:07
поделиться

Думайте если это как резервное копирование. Это является немного раздражающим до дня, Вам нужен он. Тогда объем работы, который Вы теряете, прямо пропорционален к частоте Ваших резервных копий.

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

Это - то, если Вам не нравится перестраивать колесо, Вы уже перестроили...

1
ответ дан DiningPhilanderer 26 November 2019 в 19:07
поделиться

Наличие истории изменений в Вашем html/css/javascript может быть удачей. Способность сравнить Ваш фронтенд с кодом, месяц, или несколько месяцев назад может действительно иметь большое значение в выяснении, почему внезапно шаблон - все искоса.

Плюс то, если Вы когда-нибудь хотите/нуждаетесь получить справку на своем проекте (проектах), у Вас будет легкая система, чтобы распределить, отследить, и развернуть обновленное содержание.

Определенно делают это, Вы будете благодарить себя, как только Вы привыкаете к нему.

Контроль (одно время) Обновление (начало дня) Фиксация (конец задачи/изменения после тестирования)

Вот и все. Не фиксируйте Каждую модификацию, которую Вы обновляете в браузере, просто Вы хотите пойти живые.

1
ответ дан Adam 26 November 2019 в 19:07
поделиться

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

1
ответ дан Null303 26 November 2019 в 19:07
поделиться

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

1
ответ дан Elie 26 November 2019 в 19:07
поделиться

Так как Вы обычно работаете одни, я сказал бы, что это - хорошая идея использовать управление версиями. Одно из основных преимуществ, которые я нашел в использовании управления версиями (Подрывная деятельность в моем случае), то, что при работе один это вселяет мне больше веры в попытке нового подхода к проблеме. Можно всегда переходить к новому методу или платформе решения проблемы и видеть, нравится ли Вам он лучше. Если оказывается, что это ответвление не работает, можно просто отказаться от него и вернуться к старому методу. Это также облегчает испытывать различные решения рядом.

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

2
ответ дан Vern Takebayashi 26 November 2019 в 19:07
поделиться

Я думаю, что основное преимущество в перемещении от "keep-all-versions файловая система" к системе управления исходным кодом заключается в том, что sccs добавляет структуру ко всем тем версиям, Вы сохранили всех тех файлов и предоставляете Вам записи, "каково было согласованное состояние целый файловая система в точке X".

, Другими словами, "Какая версия файла A идет с который версии B, C, D...".

И запоздалая мысль (ВЎ!): специальное действие фиксация или регистрация заставляет Вас думать о, "что это?", и получающееся сообщение журнала может, надо надеяться, служить памятью...

3
ответ дан Brent.Longborough 26 November 2019 в 19:07
поделиться

Да Вам нужен он.

По крайней мере, для единственного магазина разработчика, необходимо переместить код в каталог ProjectName-Date-Time несколько раз в день.

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

Это может стать довольно быстрым, поэтому в конечном счете Вы захотите сохранить только различия между файлами, который является тем, что делает приложение VC.

2
ответ дан Chris Cudmore 26 November 2019 в 19:07
поделиться

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

При заключении контракта я удостоверился бы, что имел основательный опыт и VSS (регистрация/) и CVS (объедините & конфликт) модели.

Работа самостоятельно у Вас есть прекрасная возможность играть и учиться с последним - я испытал бы Мерзавца.

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

3
ответ дан Keith 26 November 2019 в 19:07
поделиться

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

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

3
ответ дан wonderchook 26 November 2019 в 19:07
поделиться

Попробуйте DVCS как Мерзавец или Базар . Их невероятно легко настроить, простой в использовании, и предложить все важные функции Подрывной деятельности, CVS, и т.д.

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

4
ответ дан 2 revs, 2 users 63%chills42 26 November 2019 в 19:07
поделиться

Несколько льгот как фрилансер:

  • Знают окончательно, что Вы изменили в каждом файле и когда (как долго, поскольку Вы часто регистрируетесь)
  • Откат к любой версии в Вашем прошлом. Удивление, как часто это ценно.
  • Дорожка ряд изменений как 'выпуск'. Таким образом, Вы знаете то, что в настоящее время использует каждый клиент и что находится в разработке.
  • Резервное копирование
  • способность легко совместно использовать проект, если Вы внезапно не соло
4
ответ дан Corbin March 26 November 2019 в 19:07
поделиться

Ветвление не кажется полезным для Вас? Вы никогда не хотели просто испытывать что-то, чтобы видеть, работало ли это? Я делаю много простых html/css наполняет также, и я нахожу это неоценимым. Нет буквально никакой опасности в ветвлении для тестирования чего-то, наблюдение, если это работает, и решающий "meh" и затем просто откат.

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

4
ответ дан swilliams 26 November 2019 в 19:07
поделиться

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

Во время изготовления, Вы отмечаете управление исходным кодом с 'Сборкой 4.26'. На следующий день Вы начинаете кодировать Сборку 4.27. Три месяца спустя, когда клиент говорит, "я использую Сборку 4.26, и в функции Frickershaw существует ошибка. Я не могу обновить ни до какой другой сборки из-за некоторых изменений в форматах файлов, которые Вы сделали в сборке 4.27. Есть ли что-нибудь, что можно сделать для меня? Я готов заплатить".

Затем Вы можете контроль, ответвление 4,26 исходных кодов... фиксирует функцию Frickershaw, и затем восстанавливает пакет для пользователя приблизительно за час или два. Тогда можно переключиться назад на версию 4.39 и продолжать работать.

В том же духе, можно разыскать точное место, в котором была добавлена ошибка. Тестовые версии 4.25 для ошибки, тогда 4.20, тогда 4.10 и в конечном счете находят, что ошибка была представлена в версии 4.12. Тогда Вы ищете все изменения, внесенные между 'Сборкой 4.11', и 'Создают 4.12', и затем фокусируются на функции Frickershaw. Можно быстро найти исходный код для ошибки, никогда не отлаживая его.

5
ответ дан Jonathan Leffler 26 November 2019 в 19:07
поделиться

Да!

Делают это. Это не причинит Вам боль..

я обычно переключаюсь с Ноутбука на ПК и назад и абсолютно замечательно иметь Ваш код где-нибудь в центральном репозитории.

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

11
ответ дан Tigraine 26 November 2019 в 19:07
поделиться

Вам больше не нужно управление версиями, чем художнику трапеции нужна система поддержки. Это похоже на поддержку Вашего твердого drive—, большую часть времени это кажется избыточным, как ничего не происходит, но это будет быть необходимым в конечном счете. Здесь нет никакого maybes. Это будет происходить. И Вы никогда не можете предсказывать, когда и прошлое плохой индикатор относительно того, когда это произойдет. Это может произойти [только 110] однажды когда-либо в будущем, но даже если Вы знаете, что это произойдет, как только Вы не будете знать, как плохо это будет.

33
ответ дан Mark Cidade 26 November 2019 в 19:07
поделиться

Yes, you need version control either for development purposes or simply for storing your documents. This way, you can go back in time if you're required to do so in order to revert changes or mistake made on a code or documents.

0
ответ дан 26 November 2019 в 19:07
поделиться

Тебе нужна проверка версии, так же как и страховка в жизни.

0
ответ дан 26 November 2019 в 19:07
поделиться

Буквальный ответ на этот вопрос таков: Нет, вам не нужен контроль версий.

Однако вам нужен контроль версий, даже если вы об этом не знаете.


Тем не менее, многие инструменты SCM могут быть загадочными или откровенно неприятными в использовании, пока вы не преодолеете Grok Barrier, поэтому давайте немного изменим это:

"Вы, однако, хотите ЛЕГКИЙ В ИСПОЛЬЗОВАНИИ контроль версий." И он есть... скачайте несколько рекомендуемых визуальных клиентов и попробуйте их, а затем попробуйте тот, который лучше всего соответствует вашему образу мышления.

Что приводит к вопросу, который вы хотели задать:

Почему я хочу использовать контроль версий?"

Ответ: Контроль версий позволяет вам быть БЕЗБОЖНЫМ!

3
ответ дан 26 November 2019 в 19:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: