Управление версиями и контроль версий?



какое правильное имя для системы, которая хранит версии исходного кода, такие как SVN или TFS?



Я всегда называл это управление версиями, но такие места, как Википедия, называют его контролем версий?



чтобы сделать это более сложные сайты, такие как этот тег для обоих?

653   12  

12 ответов:

  • Контроля Версий это более общий термин, используемый для инструментов управления версиями, но и для других инструментов (Word, OpenOffice, ...). Он ссылается на версию.

  • Системы Управления Версиями предлагает управление версиями с ветвлением и слиянием, которые не всегда доступны во всех инструментах редактирования (Word не является системой управления версиями, но предлагает функции управления версиями)

  • Контроля Версий - это более общий термин, чем управление версиями в том, что он управляет версией чего-либо (источники или двоичные файлы или любые документы)

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

Мне нравится думать об этом так:

Контроля Версий это они.

Системы Управления Версиями это я использую их для.

: -)

есть три синонима, описывающие почти одно и то же:

  1. контроля версий. Имеет дело с изменениями (документ / артефакт обзоры и последующие версии документа / артефакта) или цифры (как абстракция редакция концепция).
  2. системы управления версиями. Сделки с текст (исходные) файлы, не binary. Эта разница играет большую роль до тех пор, пока она гораздо проще выполнить сравнение и получить разницу между текст файлы. Существует целый ряд основных инструментов, связанных с управлением версиями:diff,diff3,patch и т. д. Этот набор инструментов может быть расширен для формирования решения системы управления версиями. Примером такого решения является RCS.
  3. управление исходным кодом. Имеет дело с более сложными операциями над исходным кодом: хранение его в repository С возможностью создания отдельной branches. Оно также предполагается, что ветви могут быть merged. Другая часть управления исходным кодом является tagging. Одна из проблем с управлением исходным кодом заключается в том, что он имеет аббревиатуру SCM. Эта аббревиатура используется для описания более широкого набора видов деятельности - Управление Конфигурацией Программного Обеспечения. Там много путаницы, потому что управление исходным кодом - это подмножество управление конфигурацией программного обеспечения который также имеет дело с такими видами деятельности, как построить управление,управление развертыванием,непрерывная интеграция,управление зависимостями,управление выпуском и т. д.
  4. контроля версий. Он используется в качестве замены для такого термина, как управление исходным кодом во избежание двусмысленности. Она включает в себя оба понятия контроля версий и системы управления версиями что делает его описать почти та же концепция. В настоящее время оба термина контроля версий,системы управления версиями заменяется контроля версий как более подходящий с учетом широкого спектра инструментов (CVS, SVN, Git, Mercurial, ClearCase, Perforce, VSS и т. д.), которые решают обе задачи контроля версий и системы управления версиями одновременно.

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

enter image description here

  • Система Контроля Версий (VCS) является наиболее часто используемым термином
  • Управление Исходным Кодом (SCM) используется в git, но это своего рода изобретение и его можно спутать с Управление Конфигурацией Программного Обеспечения, который уже используется в индустрии программного обеспечения, и это не одно и то же.

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

  • версия (семантика: модификации)
  • вид (семантика: эквивалентность, Деривация)
  • иерархия (семантика: состоит оф)
  • статус (семантика: утверждение, доступность)
  • вариант (семантика: вариации продукта)

Peter van den Hamer and Kees Lepoeter (1996) управление проектными данными: Пять измерений структур САПР, управление конфигурацией и управление данными о продуктах, труды IEEE, Vol. 84, № 1, Январь 1996

некоторые системы (например, SVN) имеют срок редакция что означает число, связанное с определенным набором версий всех файлов в репозитории. В таких системах редакция ( SVN revision) означает версия (источники версии). В противном случае контроля версий и контроля версий это те же термины.

нет "правильного" имени, четыре наименования:

  • система контроля версий
  • система контроля версий
  • система управления
  • система управления исходным кодом

другое название: version-control

на основе тегов, используемых на этом сайте, "source control" является самым популярным (что вполне нормально, так как этот сайт о программировании):

  • управление версиями (633 метки)
  • контроля версий (587)
  • контроля версий (31)

MIL-STD 973 описаны управление конфигурацией.

управление конфигурацией программного обеспечения осуществляется точно так же.

посмотреть CMMI для хорошего объяснения SCM / CM.

системы о которых вы говорите являются системы контроля версий. Их версия вещи.

старый SCCS был системой управления исходным кодом.

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

скажем, вы меняете a файл из редакции

1.1, 1.2, 1.3.

в 1.3 мы выпускаем "удивительное издание" нашего продукта.

1.3 версия AwesomeEdition-это версия.

в таких системах, как CVS , изменения происходят как изменения нумерации, а теги отмечают версии. Нумерация версий репозитория типа SVN сбивает с толку государственных заказчиков, которые ожидают MIL-STD вид поведения.

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

Если исторический приоритет-это что-то, что нужно пройти, термин должен быть контролем исходного кода-см. http://en.wikipedia.org/wiki/Source_Code_Control_System

Итак, что именно вы ищете сейчас?

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

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

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

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

В общем случае SCM (Software Configuration Management) или (Source Code Management - производный термин) легко понять, поскольку он используется в качестве зонтичного термина, который включает как контроль версий, так и другие методы, такие как базовое управление. Видеть http://en.wikipedia.org/wiki/Software_configuration_management. в целом современные инструменты SCM, которые варьируются от CVS до Git, включают в себя как эти методы, так и многие другие полезные функции, такие как: контроль разрешений, управление правами, аудит безопасности, возможность настройки потока SCM (ClearCase), интеграция с программным обеспечением для отслеживания сборки и проблем и т. д... Я думаю, что список открыт, потому что здесь можно ввести все, что связано с изменением программного обеспечения и управлением.

Так основная путаница возникает из понимания разницы между контролем версий, контролем версий и, возможно, контролем источника. Прежде всего, все термины, которые включают "источник", являются производными терминами, под этим я подразумеваю, что некоторые люди обеспокоены всеми этими общими терминами (управление конфигурацией - что это?) и настаивают на том, что они работают с исходным кодом в частности, и они не заботятся о других случаях использования; что справедливо.

Что касается контроля версий против контроля версий I думаю, что правильный термин (в контексте таких инструментов, как SVN, Git) - это контроль версий. На мой взгляд, с термином контроль версий акцент делается на управлении изменением (помимо управления версиями) файлов исходного кода (не только), в то время как с контролем версий акцент падает на управление только версиями файлов.

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

таким образом, в заключение контроль версий включает контроль версий и более подходит для таких инструментов именования, как CVS, SVN, Git; в то время как управление версиями является производным термином и его следует избегать, если вы хотите назвать конкретный аспект SCM.

SCM > Revision Control > Version Control

Comments

    Ничего не найдено.