Jump to content

Сравнение программного обеспечения для контроля версий

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

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

Общая информация [ править ]

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

  • Модель репозитория, связь между копиями репозитория исходного кода.
    • Клиент-сервер , пользователи получают доступ к главному репозиторию через клиента ; обычно их локальные машины содержат только рабочую копию дерева проекта. Изменения в одной рабочей копии должны быть зафиксированы в главном репозитории, прежде чем они будут распространены среди других пользователей.
    • В распределенном режиме репозитории действуют как одноранговые, и пользователи обычно имеют локальный репозиторий с доступной историей версий в дополнение к своим рабочим копиям.
  • Модель параллелизма, позволяющая управлять изменениями в рабочей копии, чтобы одновременные изменения не приводили к появлению бессмысленных данных в репозитории.
    • Lock , изменения запрещены до тех пор, пока пользователь не запросит и не получит эксклюзивную блокировку файла из главного репозитория.
    • Merge пользователи могут свободно редактировать файлы, но получают информацию о возможных конфликтах при проверке их изменений в репозитории, после чего система контроля версий может объединить изменения с обеих сторон или позволить пользователю решать, когда возникают конфликты . Распределенные системы контроля версий обычно используют модель параллелизма слиянием.
Программное обеспечение Сопровождающий Статус разработки Модель репозитория Модель параллелизма Лицензия Поддерживаемые платформы Финансовые затраты
АккуРев СКМ Микро Фокус Интернэшнл Активный Клиент-сервер Объединить или заблокировать Собственный Большинство Java платформ ( Unix-подобные , Windows , macOS ) 350$ за место, оговаривается индивидуально.
Azure DevOps Майкрософт Активный Клиент-серверный , Распределенный Объединить или заблокировать Собственный Windows , кроссплатформенность через Azure DevOps Services. Бесплатно для 5 пользователей в Azure DevOps Services или для проектов с открытым исходным кодом; остальное по себестоимости, лицензируется по подписке MSDN или прямой покупке.
ГНУ Базар ООО "Каноникал" последний релиз 2016 года, раздвоенный как Breezy Распределенный и клиент-серверный Объединить GPL-2.0 или новее Unix-подобный , Windows , macOS Бесплатно
Биткипер БитМовер Инк. неподдерживаемый; последнее обновление: 29 декабря 2018 г. Распределенный Объединить Апач-2.0 Unix-подобный , Windows , macOS Бесплатно
Код IBM DevOps ClearCase IBM Рационал Активный Клиент-сервер Объединить или заблокировать [номер 1] Собственный Linux , Windows , AIX , Solaris , HP UX , IBM i , OS/390 , z/OS , 4600 долларов США за плавающую лицензию (удерживается автоматически минимум на 30 минут для каждого пользователя, можно сдать вручную)
Код Кооператив Надежное программное обеспечение Активный Распределенный Объединить С Окна 150 долларов за место
CVS Команда CVS [1] поддерживается, но новые функции не добавляются; последний выпуск 2008 года Клиент-сервер Объединить GPL-1.0 или новее Unix-подобный , Windows , macOS Бесплатно
ЦВСНТ Программное обеспечение Мартовского Зайца [2] и члены сообщества Активный Клиент-сервер Объединить или заблокировать GPL или проприетарная лицензия Unix-подобные , Windows , macOS , IBM i Плата за распространение — 425 фунтов стерлингов за более старую версию или коммерческая лицензия — 85 фунтов стерлингов за последнюю версию CVS Suite или Change Management Server.
дарки Команда «Даркс» Активный Распределенный Объединить GPL-2.0 или новее Unix-подобный , Windows , macOS Бесплатно
Что Команда Дат Активный Распределенный Объединить Пункт BSD-3 Unix-подобный , Windows , macOS Бесплатно
Размеры см Серена Программное обеспечение Активный Клиент-сервер Объединить или заблокировать Собственный Windows , Linux , Solaris , AIX , HP UX , z/OS Оплаченный
Ископаемое Д. Ричард Хипп Активный Распределенный Объединить Пункт BSD-2 POSIX , Windows , macOS , другое Бесплатно
Гит Джунио Хамано Активный Распределенный Объединить Только GPL-2.0 POSIX , Windows , MacOS Бесплатно
GNU арка Энди Тай неподдерживаемый Распределенный Объединить лицензия GPL Unix-подобный , Windows , macOS Бесплатно
IC Управление IC Manage Inc. Активный Клиент-сервер Объединить или заблокировать Собственный Unix-подобный , Windows , macOS Оплаченный
Честность PTC ПТК Активный Клиент-сервер Объединить или заблокировать Собственный Unix-подобный , Windows Оплаченный
Меркуриальный Меркуриальное сообщество Активный Распределенный Объединить GPL-2.0 или новее Unix-подобный , Windows , macOS Бесплатно
монотонный Натаниэль Смит, Грейдон Хоар Активный Распределенный Объединить GPL-2.0 или новее Unix-подобный , Windows , macOS Бесплатно
Перфорс Хеликс Ядро Перфорс Софтвер Инк. Активный Клиент-серверный и распределенный Объединить или заблокировать Собственный Unix-подобный , Windows , macOS Доступно как бессрочная лицензия, так и подписки; цены варьируются в зависимости от конфигурации и опций [3]
Пластиковый СКМ Программный код Активный Клиент-серверный и распределенный Объединить или заблокировать Собственный Линукс , Виндовс , МакОС Бесплатно для трех пользователей, в противном случае — от 7 долларов США за пользователя в месяц для серверной версии или 23 доллара США за пользователя в месяц для локальной версии. Никаких бессрочных лицензий. [4]
ПВХС Серена Программное обеспечение Активный Клиент-сервер Замок Собственный Windows , Unix-подобный Оплаченный
Концерт команды Rational IBM Рационал Активный Клиент-сервер [номер 2] [5] [6] Объединить или заблокировать Собственный Linux , Windows , AIX , Solaris , HP UX , IBM i , OS/390 , z/OS , macOS Бесплатно для 10 пользователей, остальное платно.
Система контроля версий Тьен-Ти Нгуен Активный местный Объединить или заблокировать GPL-3.0 или новее Unix-подобный Бесплатно
Система контроля исходного кода (SCCS) Йорг Шиллинг [номер 3] Активный местный замок [номер 4] CDDL – проприетарный [номер 5] Unix-подобный , macOS Бесплатные версии под лицензией CDDL или платные в некоторых дистрибутивах UNIX.
СтарТим Борланд ( Микро Фокус ) Активный Клиент-сервер Объединить или заблокировать Собственный Windows и кроссплатформенность через клиент на основе Java Оплаченный
Подрывная деятельность (СВН) Фонд программного обеспечения Apache [7] Активный Клиент-сервер Объединить или заблокировать [номер 6] Апач-2.0 Unix-подобный , Windows , macOS Бесплатно
Объемный СКМ Перфорс Софтвер Инк. Активный Клиент-сервер Объединить или заблокировать Собственный Линукс , Виндовс , МакОС 595 долларов США за пользователя; Подписка $29 в месяц
Синергия IBM Рационал Активный Клиент-серверный и распределенный Объединить или заблокировать Собственный Linux , Windows , Unix-подобные Оплаченный [8]
Сейф ООО «СорсГир» Активный Клиент-сервер Объединить или заблокировать Собственный Unix-подобный , Linux , Windows 300 долларов США за пользователя
Веста Кеннет Шалк; Тим Манн, [9] [10] веб-сайт не обновлялся с 2006 года; последний выпуск от 15 февраля 2009 г. ( 15 февраля 2009 г. ) Выбор эмуляции распределенного протокола NFS для опционального объединения клиентов и/или серверов. запереться на ветке; объединить ветку с веткой LGPL Тру64 , Линукс Бесплатно
Визуальный исходный код (VSS) Майкрософт только исправления серьезных ошибок Общая папка Объединить или заблокировать Собственный Окна Примерно 500 долларов США за лицензию или одна лицензия, включенная в каждую подписку MSDN.
Программное обеспечение Сопровождающий Статус разработки Модель репозитория Модель параллелизма Лицензия Поддерживаемые платформы Финансовые затраты

Техническая информация [ править ]

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

Пояснения к таблице

  • Программное обеспечение : название описываемого приложения.
  • Язык программирования : язык кодирования, на котором разрабатывается приложение.
  • Метод хранения : описывает форму, в которой файлы хранятся в репозитории. Снимок указывает , что зафиксированные файлы сохраняются целиком — обычно в сжатом виде. Набор изменений в этом контексте указывает, что зафиксированные файлы сохраняются в форме разницы между предыдущей или следующей версией.
  • Область изменения : Описывает, записываются ли изменения для отдельных файлов каталогов или для целого дерева .
  • Идентификаторы ревизий : используются внутри для идентификации конкретных версий файлов в репозитории. Системы могут использовать псевдослучайные идентификаторы, хэши содержимого ревизий или имена файлов с последовательными номерами версий ( пространство имен ). При использовании Integrated Difference версии основаны на самих наборах изменений, которые могут описывать изменения более чем в одном файле.
  • Сетевые протоколы : список протоколов, используемых для синхронизации изменений .
  • Размер исходного кода : указывает размер исходного кода в мегабайтах.
Программное обеспечение Язык программирования Способ хранения Объем изменений Идентификаторы редакций Сетевые протоколы Размер исходного кода
АккуРев СКМ С++ , Ява Набор изменений Файл Пара чисел NN/NN обычай Un­known
Azure DevOps С++ и С# Набор изменений Файл и дерево Числа SOAP через HTTP или HTTPS, Ssh Un­known
ГНУ Базар Python 2 , Pyrex (опционально) , C [номер 7] Снимок Дерево Псевдослучайный пользовательские, пользовательские через SSH , пользовательские через HTTP , HTTP , SFTP , FTP , пакеты электронной почты, [номер 8] WebDAV (с плагином) 4,1 МБ
Биткипер С Набор изменений Дерево Ключи набора изменений, цифры по индивидуальному заказу, HTTP , RSH , SSH , электронная почта 99 МБ
Менеджер по изменениям программного обеспечения CA С , С++ , Java , HTML Набор изменений и снимок Файл и дерево [ нужна ссылка ] Числа HTTP , TCP/IP Un­known
Код IBM DevOps ClearCase С , Ява , Перл Набор изменений Файл и дерево [11] Числа пользовательский (CCFS), пользовательский ( драйвер файловой системы MVFS ), HTTP Un­known
Код Кооператив С++ Набор изменений Un­known Идентификатор пользователя – порядковый номер электронная почта ( MAPI , SMTP / POP3 , Gmail ), LAN Un­known
CVS С Набор изменений Файл Числа псервер, ssh 10,3 МБ
ЦВСНТ С++ Набор изменений Файл и дерево [12] Числа настройка через ssh , sspi, sserver, gserver, pserver 55 МБ
дарки Хаскелл Набор изменений (патч) [номер 9] Дерево н/д по индивидуальному заказу через SSH , HTTP , электронную почту 1,7 МБ
Размеры см С , С++ , Java , С# Снимок или набор изменений Файл и дерево Числа Пользовательский, HTTP / HTTPS Un­known
Ископаемое С Снимок или набор изменений [13] Дерево SHA-1 или SHA-3 Хэши [14] HTTP / HTTPS , по умолчанию через SSH 7,2 МБ [номер 10]
Гит C , сценарии оболочки , Perl Снимок Дерево SHA-1 хеши пользовательские ( git ), пользовательские через SSH , [15] HTTP / HTTPS , rsync , электронная почта, пакеты 23 МБ [16]
GNU арка C , сценарии оболочки Набор изменений Дерево Числа HTTP , WebDAV Un­known
IC Управление С++ , С Набор изменений Un­known Числа обычай Un­known
Меркуриальный Питон , С Набор изменений Дерево Числа, [номер 11] SHA-1 хеши пользовательские пакеты через ssh , HTTP , электронную почту (со стандартным плагином) 20 МБ
МКС Честность С , Ява Набор изменений Файл Числа индивидуальный, HTTP Un­known
монотонный С++ Гибридный [номер 12] Дерево SHA-1 хеши пользовательская ( netsync ), пользовательская через SSH , файловая система 4,4 МБ
Перфорс Хеликс Ядро С++ , С Набор изменений Дерево Числа обычай Un­known
ПВХС С++ , С Набор изменений Файл Числа Un­known Un­known
Концерт команды Rational Ява Набор изменений Дерево Числа REST Службы через HTTP / HTTPS Un­known
Система контроля версий С Набор изменений Файл Числа Файловая система 5,3 МБ
Система контроля исходного кода С Набор изменений Файл Числа НФС 1,3 МБ
СтарТим С++ , С , Ява Снимок Файл и дерево MD5- хеши индивидуальный, TCP/IP Un­known
Подрывная деятельность С Набор изменений и снимок Дерево Числа настраиваемый ( svn ), настраиваемый через ssh , HTTP и SSL ( с использованием WebDAV ) 41 МБ
Объемный СКМ С++ Набор изменений Файл и дерево Числа TCP/IP Un­known
Синергия Ява Набор изменений (текст), снимок (двоичный) Файл Числа по индивидуальному заказу, по SSH , по HTTP Un­known
Сейф С# Набор изменений Файл и дерево Числа HTTP , HTTPS Un­known
Веста С++ Снимок Дерево Un­known НФС 15,8 МБ
Визуальный исходный код С Снимок Файл Числа СМБ , DCOM Un­known
Программное обеспечение Язык программирования Способ хранения Объем изменений Идентификаторы редакций Сетевые протоколы Размер исходного кода

Особенности [ править ]

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

Пояснения к таблице

  • Программное обеспечение : название описываемого приложения.
  • Атомарные коммиты : относятся к гарантии того, что все изменения будут внесены или что никаких изменений вообще не будет.
  • Переименование файлов : описывает, позволяет ли система переименовывать файлы, сохраняя при этом историю их версий.
  • Объединение переименований файлов : описывает, может ли система объединить изменения, внесенные в файл в одной ветке, в тот же файл, который был переименован в другой ветке (или наоборот). Если один и тот же файл был переименован в обеих ветвях, возникает конфликт переименования, который должен разрешить пользователь.
  • Символические ссылки : описывает, позволяет ли система контролировать версии символических ссылок, как и в случае с обычными файлами. Управление версиями символических ссылок некоторые считают функцией, а некоторые — нарушением безопасности (например, символическая ссылка на /etc/passwd). Символические ссылки поддерживаются только на некоторых платформах, в зависимости от программного обеспечения.
  • Перехватчики до/после события : указывают на возможность запуска команд до или после выполнения действия, такого как фиксация.
  • Подписанные версии : относится к интегрированной цифровой подписи версий в таком формате, как OpenPGP .
  • Отслеживание слияний : описывает, запоминает ли система, какие изменения были объединены между какими ветвями, и объединяет только те изменения, которые отсутствуют при объединении одной ветки в другую.
  • конца строки Преобразования : описывает, может ли система адаптировать символы конца строки для текстовых файлов так, чтобы они соответствовали стилю конца строки для операционной системы, в которой она используется. Степень детализации контроля варьируется. Например, Subversion можно настроить на обработку EOL по-разному в зависимости от типа файла, тогда как Perforce преобразует все текстовые файлы в соответствии с едиными настройками для каждого клиента.
  • Теги : указывает, можно ли давать осмысленные имена конкретным ревизиям, независимо от того, называются ли эти имена тегами или метками.
  • Международная поддержка : указывает, поддерживает ли программное обеспечение несколько языковых сред и операционных систем.
  • Поддержка имен файлов в Юникоде : указывает, поддерживает ли программное обеспечение взаимодействие с файловыми системами, использующими различные кодировки символов .
  • Поддерживает большие репозитории : может ли система эффективно обрабатывать репозитории размером около гигабайта или больше?
Программное обеспечение Атомарные коммиты Переименовывает файлы Объединение переименований файлов Символические ссылки Крючки до/после события Подписанные версии Объединить отслеживание Конечные преобразования Теги Международная поддержка Поддержка имен файлов в Юникоде Поддерживает большие репозитории
АккуРев СКМ Да Да Частичный [номер 13] Да Да Да Да Да Да Да [17] Да [18] [19]
Azure DevOps Да Да Да Да Да Нет Да Да Да Да Да Да
ГНУ Базар Да Да Да Да Да Да Да Да [20] Да Да Да Un­known
Биткипер Да Да Да Да Да Un­known Да Да Да Un­known Un­known Да
Менеджер по изменениям программного обеспечения CA Да Да Да Да Да Да Да Да Да Да Да Un­known
Код IBM DevOps ClearCase Частичный [номер 14] Да Да Да Да Да Да Да Да Да [21] Un­known Да
Код Кооператив Да Да Да Нет Частичный Нет Нет Нет Да Un­known Un­known Un­known
CVS Нет Нет Нет Нет Частичный Нет Нет Да Да Un­known Нет Да
ЦВСНТ Да Да Да Да Да Нет Да Да Да Да Да Да
дарки Да Да Да Нет [номер 15] Да Да [номер 16] Нет Да Нет Да [номер 17] Un­known
Размеры см Да Да Да Нет Да Un­known Да Да Да [номер 18] Нет [номер 19] Да Да
Ископаемое Да Да Да Да Нет Да Да Да [номер 20] Да Да Да Un­known
Гит Да Частичный [номер 21] Да Да Да Да [номер 22] Да Да Да Да Да [номер 23] Частичный [номер 24]
GNU арка Да Да Un­known Да Да Да Un­known Un­known Да Un­known Un­known Un­known
IC Управление Да Да Нет Да Да Да Да Да Да Да Un­known Un­known
МКС Честность Да Да Да Нет Да Да [номер 25] Да [номер 26] Да Да Да Да Un­known
Меркуриальный Да Да Да Да Да Да Да Да Да Да [номер 27] Частичный [номер 28] Да [22]
монотонный Да Да Да Нет [номер 29] Да Да, обязательно Да Да Да Un­known Да Un­known
Перфорс Хеликс Ядро Да Да [23] Да [24] Частичный [номер 30] Да Нет Да [25] Да Да Да [26] Да [27] Да
Концерт команды Rational Да Да Да Да Да [номер 31] Да Да Да Да Да Да Un­known
Система контроля исходного кода Да Нет Нет Нет Да Нет Нет Частичный [номер 32] Да Да
СтарТим Да [номер 33] Да Un­known Да Нет Нет Да Да Да Да Un­known Да
Подрывная деятельность Да Да [номер 34] Частичный [номер 35] Да Да Нет [номер 36] Да. [номер 37] Да Частичный [номер 38] Да Да Да
Объемный СКМ Да Да Да Да Да Да Да Да Да [28] Да Да Да
Синергия Да Да Да Да Да Да Да Да Да Да Да [номер 39] Да
Сейф Да Да Да Нет Да Нет Нет Да Да Un­known Un­known Un­known
Веста Да Да Un­known Un­known Да Нет Нет Нет Да Нет Un­known Да
Визуальный исходный код Нет Нет [номер 40] Un­known Нет Да Нет Нет Un­known Да Да Un­known Un­known
Программное обеспечение Атомарные коммиты Переименовывает файлы Объединение переименований файлов Символические ссылки Крючки до/после события Подписанные версии Объединить отслеживание Конечные преобразования Теги Международная поддержка Поддержка имен файлов в Юникоде Поддерживает большие репозитории

Расширенные возможности [ править ]

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

Пояснения к таблице

  • Расширение ключевых слов : поддерживает автоматическое расширение ключевых слов, таких как номер версии файла.
  • Интерактивные коммиты : интерактивные коммиты позволяют пользователю выбирать общие строки кода, используемые для привязки файлов (патч-кусков), которые становятся частью коммита (оставляя невыбранные изменения как изменения в рабочей копии), вместо того, чтобы иметь только детализацию на уровне файла. .
  • Внешние ссылки : встраивание сторонних репозиториев в дерево исходников.
  • Частичное извлечение/клонирование : возможность извлекать или клонировать только указанный подкаталог из репозитория.
  • Разрешения : отслеживает биты разрешений файла в истории изменений.
  • временной метки Сохранение : перезаписывает последний измененный атрибут файловой системы временем фиксации при извлечении.
  • Пользовательский инструмент автоматического слияния : автоматическое слияние можно выполнить с помощью любого инструмента по выбору пользователя (надеюсь, можно настроить для каждого файла отдельно).
  • Поддерживаемые форматы : либо поддержка чтения/записи, либо только чтение (преобразование, потенциально повторяющееся).
  • Общий кэш сборки производных объектов : возможность автоматически заменять (подключать) производные объекты, созданные другими конфедеративными клиентами, которые имеют точно такие же зависимости, вместо того, чтобы перестраивать их локально.
Программное обеспечение Расширение ключевых слов Интерактивные коммиты Внешние ссылки Частичная проверка/клонирование Разрешения Сохранение временных меток Пользовательский инструмент автоматического слияния Поддерживаемые форматы Общий кэш сборки производных объектов
АккуРев СКМ Да Un­known Да Да только бит выполнения Да Да git (би-каталог) [29] Нет
Azure DevOps Нет Да Un­known Да Да Un­known Да Un­known Un­known
ГНУ Базар Да [30] Да [31] Да [32] Нет только бит выполнения Нет [номер 41] Да [33] бзр, [34] мерзавец, [35] хг, [36] любой, у которого есть fastexporter Нет
Биткипер POSIX и RCS Да Да Да Да Да Да биткипер Нет
Менеджер по изменениям программного обеспечения CA Нет Да Нет Да только бит выполнения Да Да Менеджер по изменениям программного обеспечения CA Нет
Код IBM DevOps ClearCase Да [37] Нет Нет Да Да Да [номер 42] Да ClearCase Да
CVS РКС Нет Да Да [номер 43] Частичный [номер 44] Да Нет резюме Нет
ЦВСНТ РКС Да [номер 45] Да [номер 46] Да [№ 47] Да Да Нет резюме Да [№ 48]
дарки Нет Да Нет Нет [номер 49] Частичный [номер 50] Нет только конфликты дарки Нет
Размеры см Да Нет Да [номер 51] Да Да Да Да Миграция с ClearCase, Subversion, CVS, PVCS, ChangeMan DS Un­known
Ископаемое Нет Да Да [номер 52] Нет только бит выполнения [38] Нет Нет ископаемые (использует sqlite), любые, у которых есть fastexporter; [39] миграция с git и svn [40] Нет
Гит Нет [номер 53] Да [номер 54] Да [41] Да [42] только бит выполнения Нет [номер 55] Да git, cvs, subversion, hg, любой, у которого есть fastexporter Нет
Меркуриальный Да [43] Да [44] Да [45] Да [46] только бит выполнения через (альфа) расширение [47] Да [48] хг, подрывная деятельность, [49] двусторонняя отправка без потерь в и извлечение из git, [50] миграция из любого другого формата, поддерживаемого расширением Convert: [51] CVS, Darcs, Bazaar, Monotone, GNU Arch и Perforce. [52] Нет
Перфорс Хеликс Ядро Да [53] Нет Нет Да Да Да [53] Да [53] Перфорс Нет
Концерт команды Rational Нет Да Да Да Да Un­known Да Н/Д Нет
Система контроля исходного кода Да Нет Да только бит выполнения некоторые варианты [ нужна ссылка ] Нет СКС Нет
Объемный СКМ Да Нет Нет Да Нет Да Да [номер 56] Объемное звучание Нет
Подрывная деятельность Да [54] Частичный [номер 57] Да [55] Да только бит выполнения Частичный [номер 58] Да [номер 59] подрывная деятельность Нет
Веста Нет Нет Да через SDL Нет Un­known Да Нет Веста Да
Визуальный исходный код Да Un­known Un­known Да Да Un­known Да Un­known Нет
Программное обеспечение Расширение ключевых слов Интерактивные коммиты Внешние ссылки Частичная проверка/клонирование Разрешения Сохранение временных меток Пользовательский инструмент автоматического слияния Поддерживаемые форматы Общий кэш сборки производных объектов

Основные команды [ править ]

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

Пояснения к таблице

  • Repository init : создать новый пустой репозиторий (т. е. базу данных контроля версий).
  • clone : ​​создать идентичный экземпляр репозитория (в безопасной транзакции).
  • pull : загрузить версии из удаленного репозитория в локальный репозиторий.
  • push : загрузить версии из локального репозитория в удаленный репозиторий.
  • Локальные ветки : создайте локальную ветку, которой нет в исходном удаленном репозитории.
  • checkout : создать локальную рабочую копию из (удаленного) репозитория.
  • update : обновить файлы в рабочей копии последней версией из репозитория.
  • lock : заблокировать файлы в репозитории от изменения другими пользователями.
  • add : пометить указанные файлы для добавления в репозиторий при следующем коммите.
  • удалить : пометить указанные файлы для удаления при следующей фиксации (примечание: сохраняется целостная история изменений до и при удалении).
  • move : пометить указанные файлы для перемещения в новое место при следующей фиксации.
  • копировать : пометить указанные файлы для копирования при следующей фиксации.
  • merge : применить различия между двумя источниками к пути рабочей копии.
  • commit : Записать изменения в репозиторий.
  • revert : восстановить файл рабочей копии из репозитория.
  • создать файл пакета : создать файл, содержащий сжатый набор изменений в данном репозитории.
  • rebase : локальный порт пересылки фиксирует обновленную головку восходящего потока
  • Примечание. Команды в зеленых прямоугольниках, не заключенные в [квадратные скобки], отображаются в интерактивной командной строке. Текст в [квадратных скобках] поясняет, где найти эквивалентную функциональность.
Программное обеспечение Инициализация репозитория клонировать тянуть толкать Местные филиалы проверить обновлять замок добавлять удалять двигаться копировать слить совершить возвращаться создать файл пакета лиса
АккуРев СКМ МКДепо Н/Д Н/Д Н/Д мкстрим мквс обновлять якорь добавлять несуществующий двигаться cp [затем] добавить – вкл -s – ln слить держать – продвигать очистить – вернуть Н/Д chstream
Azure DevOps используя Git клонировать с помощью Git получать совершить полка проверить получать замок добавлять удалить переименовывать используя Git слить совершить отменить используя Git получать
ГНУ Базар инициализация – инициализация – без дерева [номер 60] – инициализация-репо – инициализация-репо –без деревьев [номер 61] ветка – ветка – нет дерева [номер 62] тянуть толкать инициализация — ветка оформление заказа – оформление заказа – легкий вес [номер 63] обновлять Н/Д добавлять РМ МВ Н/Д слить совершить возвращаться отправлять лиса [номер 64]
Биткипер настраивать клонировать тянуть -R толкать клонировать со тянуть Un­known добавлять РМ МВ КП тянуть совершить отменить исправление крах
Код IBM DevOps ClearCase нагревать Н/Д Н/Д Н/Д Н/Д проверить обновлять заблокировать – разблокировать mkelem имя_команды МВ Н/Д слить регистрироваться отменить оформление заказа — rmver Н/Д найти слияние
CVS нагревать Н/Д Н/Д Н/Д Н/Д проверить обновлять Un­known добавлять РМ Н/Д Н/Д обновить -j совершить удалить [затем] обновить Н/Д Н/Д
ЦВСНТ нагревать Н/Д Н/Д Н/Д Н/Д проверить обновлять редактировать добавлять РМ переименовывать Н/Д обновить -j совершить обновить -С Н/Д Н/Д
дарки нагревать клонировать тянуть [56] толкать Н/Д [номер 65] клонировать тянуть [56] Un­known добавлять удалять двигаться Н/Д тянуть – толкать записывать возвращаться отправить -о [номер 66] лиса
Ископаемое новый – открытый клонировать тянуть толкать ветка – фиксация – ветка клонировать/открыть обновлять Н/Д добавлять rm/del мв/переименовать Н/Д слить совершить возвращаться Репозиторий Fossil представляет собой отдельный файл sqlite. Н/Д
Гит инициализация – инициализация – голая клон – клон – голый принести толкать ветвь проверить тянуть Н/Д добавлять РМ МВ cp [затем] git добавить [номер 67] слить совершить сброс – жесткий пучок лиса
Меркуриальный нагревать клонировать тянуть толкать закладка [номер 68] обновление – вверх – оформление заказа – сотрудничество тянуть -у Н/Д добавлять удалить — РМ двигаться – МВ копия – КП слить совершить - ци возвращаться пучок лиса [57]
монотонный нагревать клонировать тянуть толкать Н/Д проверить обновлять Un­known добавлять уронить переименовывать Н/Д слить совершить возвращаться Н/Д Н/Д
Перфорс Хеликс Ядро клиент p4 и синхронизация p4 синхронизация p4 синхронизация p4 p4 отправить Требуется переход на функцию последних потоков. редактировать синхронизировать заблокировать – разблокировать добавлять удалить двигаться копировать интегрировать представлять на рассмотрение возвращаться Un­known Н/Д
Система контроля исходного кода создавать Н/Д Н/Д Н/Д админ - фб получить (только чтение) – редактировать получить (только чтение) – редактировать Н/Д [№ 69] создавать Н/Д Н/Д Н/Д редактировать -я дельта получить -р Н/Д редактировать -я
Подрывная деятельность svnadmin создать горячая копия свнадмина [обходной путь]: загрузка svnadmin [обходной путь]: дамп svnadmin Н/Д касса - что обновление – вверх замок добавлять удалить – дель – удалить – РМ переместить – МВ – переименовать – Рен копия – КП слить совершить - ци возвращаться Н/Д Н/Д
Объемный СКМ mkmainline Н/Д Н/Д Н/Д мкбранч проверить получать проверить добавлять РМ двигаться Н/Д слить регистрироваться voidcheckout Н/Д лиса
Веста vcreate врепл врепл врепл Н/Д vcheckout наступление vcheckout [… затем] проверка [номер 70] ВРМ МВ [затем] проверка [номер 71] cp [затем] vcheckin [номер 72] вдифф проверка проверка -c 0 vmake [или] Веста наступление
Визуальный исходный код ? Un­known Un­known Un­known Н/Д Получить последние Получить последние Проверить Добавить файлы Удалить ? Un­known ? Регистрироваться Отменить оформление заказа Un­known Un­known
Программное обеспечение Инициализация репозитория клонировать тянуть толкать Местные филиалы проверить обновлять замок добавлять удалять двигаться копировать слить совершить возвращаться создать файл пакета лиса

Расширенные команды [ править ]

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

Пояснения к таблице

  • Псевдонимы команд : создавайте собственные псевдонимы для определенных команд или их комбинаций.
  • Блокировка/разблокировка : заблокируйте файл исключительно, чтобы другие не могли его редактировать.
  • Отложить/отложить : временно отложить часть или все изменения в рабочем каталоге.
  • Откат : удалить патч/ревизию из истории.
  • Выбор вишен : переместите только некоторые версии из ветки в другую (вместо объединения ветвей).
  • Bisect : двоичный поиск исходной истории для изменения, которое привело или исправило регрессию.
  • Входящий/исходящий : запрос различий между локальным и удаленным репозиторием (исправления, которые будут получены/отправлены по запросу/push)
  • Grep : поиск в репозитории строк, соответствующих шаблону.
  • Запись : включать в фиксацию только некоторые изменения файла, а не другие.
  • Примечание . Команды в зеленых прямоугольниках, не заключенные в [квадратные скобки], отображаются в интерактивной командной строке. Текст в [квадратных скобках] поясняет, где найти эквивалентную функциональность.
Программное обеспечение Псевдонимы команд Блокировка/разблокировка Отложить/убрать с полки Откат Сбор вишни биссектриса Входящие/исходящие Схватить Записывать
АккуРев СКМ Нет включить блокировку файлов Нет вернуть – очистить продвигать Нет Нет Нет Un­known
Azure DevOps Да заблокировать/разблокировать отложить/убрать с полки откат слить Нет Un­known Un­known Нет
ГНУ Базар [в файле «.bazaar/bazaar.conf»] Нет отложить/убрать с полки отменить обязательства объединить (без отслеживания) биссектриса (плагин биссектрисы) отсутствует –только для них/отсутствует –только для меня grep (плагин grep) Нет
Биткипер Un­known Un­known парковать/отпарковывать отменить Un­known разделить пополам изменения -П/-Л схватить Un­known
ЦВСНТ [в файле «.cvsrc»] редактировать -x/unedit [номер 73] Нет админ -о [номер 74] да [номер 75] комментировать [номер 76] Нет нет [58] Нет
Даркс Нет Нет вернуть/отменить возврат отменить запись да [номер 77] тест – пополам тянуть/толкать – сухой ход Нет записывать
Ископаемое Нет Нет тайник поп/тайник применить [номер 78] объединить – откатить объединить –cherrypick разделить пополам Нет поиск Нет
Гит [в файле «.gitconfig»] Нет тайник / тайник поп [номер 79] сбросить HEAD^ выбор вишни разделить пополам вишня схватить добавить -p
Меркуриальный [в файле «.hgrc»] Нет shelve/unshelve (в комплекте расширение [59] ) полоса (в комплекте удлинитель [60] ) трансплантат (ядро [61] ) или трансплантация(комплексное расширение [62] ) разделить пополам входящий/исходящий схватить совершить –интерактивный
монотонный [в монотоне] Нет Нет kill_rev_locally [номер 80] срывать разделить пополам Нет Нет Un­known
Перфорс Хеликс Ядро через брокера [63] заблокировать/разблокировать отложить/убрать с полки стереть с лица земли полный [64] Un­known развязки схватить Un­known
Подрывная деятельность Нет заблокировать/разблокировать отложить/убрать с полки [номер 81] Нет svnmerge собирает вишню Сторонний инструмент [номер 82] статус -u [номер 83] Нет Нет
Объемный СКМ Нет проверить полка откат дубликаты изменений Нет разница поиск Нет
Программное обеспечение Псевдонимы команд Блокировка/разблокировка Отложить/убрать с полки Откат Сбор вишни биссектриса Входящие/исходящие Схватить Записывать

Пользовательские интерфейсы [ править ]

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

Пояснения к таблице

  • Программное обеспечение : название описываемого приложения.
  • Веб-интерфейс : описывает, содержит ли приложение веб-интерфейс. Веб-интерфейс может позволить программному обеспечению публиковать диагностические данные на веб-сайте или даже обеспечить удаленное управление программным приложением.
  • Графические интерфейсы : GUI — это графический интерфейс пользователя. Если программный продукт оснащен графическим пользовательским интерфейсом, доступ к его функциям можно получить через окна приложения, в отличие от доступа к функциям, основанным на вводе команд в командной строке, например, через интерфейс DOS.
  • Плагины : функции доступны через интегрированную среду разработки . Минимальная функция должна заключаться в перечислении состояния версии файла и возврате/извлечении файлов.
Программное обеспечение Веб-интерфейсы Автономные графические интерфейсы Интеграция и/или плагины для IDE
АккуРев СКМ Да Windows (включая интеграцию с Explorer) , Linux , Unix , macOS , BeOS. Доступны IntelliJ IDEA , Eclipse , Visual Studio
Azure DevOps включено (сервер SharePoint используется для веб-служб) Окна включены; macOS, доступен Unix Визуальная студия. Java-клиент для Eclipse IDE и IntelliJ IDEA (стандартно в Ultimate Edition)
ГНУ Базар можно использовать простой веб-сервер Olive, bzr-gtk ( GTK +), Bazaar Explorer ( Qt ), QBzr ( Qt ), TortoiseBzr (Windows) Eclipse (BzrEclipse, QBzrEclipse), Visual Studio (bzr-visualstudio), TextMate (TextMateBundle), Komodo IDE , Wing IDE
Биткипер включено включено (бкд) Un­known
Менеджер по изменениям программного обеспечения CA включено Графический интерфейс на основе Eclipse Затмение , MS Visual Studio
Код IBM DevOps ClearCase в комплекте, веб-интерфейс Clearcase более ранние версии: родной для MS Windows, графический интерфейс на основе Motif для Unix-подобных систем, клиент TSO для z/OS . Emacs , Eclipse (собственность IBM, Eclipse-CCase), Visual Studio (собственность IBM), KDevelop (стандарт?), IntelliJ IDEA (стандарт в Ultimate Edition)
Код Кооператив В этом нет необходимости, поскольку весь проект реплицируется локально. Окна Un­known
CVS cvsweb, ViewVC и другие TortoiseCVS (Windows Explorer), TkCVS ( Tcl / Tk ), WinCVS , macOS, GTK , Qt доступно Eclipse (Team), KDevelop (стандарт), IntelliJ IDEA (стандарт в выпусках Community и Ultimate), Emacs (стандарт VC), Komodo IDE , BBEdit , Wing IDE
ЦВСНТ cvsweb, ViewVC и другие Windows, macOS, OS/400 , GTK Доступны , Qt Все те, которые поддерживают CVS, а также коммерческие плагины для SCCI, Bugzilla, Build.
дарки darcs.cgi включено; дарксвеб, Трек в разработке; TortoiseDarcs (Проводник Windows), macOS (альфа-версия), Eclipse (eclipsedarcs), Emacs (vc-darcs.el)
Размеры см Да Windows (включая интеграцию с проводником) Eclipse , Visual Studio , IntelliJ IDEA , XCode , Powerbuilder
Ископаемое Встроенный веб-сервер (режим пользовательского интерфейса/сервера), возможность запуска нескольких репозиториев через режим CGI. топливо-СКМ Un­known
Гит GitWeb, Wit, Cgit, GitLab , GitHub , gitorious , Trac , Kallithea , Bitbucket , Stash, Springloops , Bonobo Git Server, Gitea , Gogs gitk, git-gui ( Tcl / Tk ), tig, Gitbox (macOS), TortoiseGit , qgit, gitg (GNOME/GTK), (h)gct (Qt), git-cola (Qt), расширения Git (Windows), GitEye, SmartGit/Hg, Tower, SourceTree (macOS/Windows), Sprout (macOS), GitX (macOS), GitUp (macOS), GitKraken , Sublime Merge Aptana 3 Beta (Aptana Studio 3 с интеграцией с Git); Атом ; Затмение (JGit/EGit); Хеликс TeamHub ; Netbeans (NbGit); КРазработка ; Visual Studio (расширения Git); Emacs (расширение стандартного VC); SAP веб-IDE; TextMate (Git TextMate Bundle); Vim (плагин VCSCommand и беглый плагин); IntelliJ IDEA >8.1 (стандарт в версиях Community и Ultimate); Комодо IDE ; Анюта ; XCode , Wing IDE ; Пичарм
GNU арка АрчЗум ArchWay ( GTK 2), TlaLog Emacs (стандартный VC)
IC Управление включено Windows, Linux, Unix, macOS Emacs, Cadence Design Framework, Synopsys Custom Designer
МКС Честность Да Windows, Linux, Unix, Солярис, AIX, Eclipse, Microsoft Visual Studio, Perforce и другие. Также обеспечивает поддержку стандартного интерфейса управления исходным кодом (SCC). [65]
Меркуриальный включено, [номер 84] Трак , Каллифея Hgk ( Tcl / Tk ), (h)gct (Qt), TortoiseHg (Windows Explorer, Nautilus), MacHg,

MacMercurial, Murky, SourceTree (Windows/macOS), TortoiseHg, SmartGit/Hg

IntelliJ IDEA (сторонний плагин hg4idea), Eclipse (Mercurial Eclipse), NetBeans, Visual Studio 2008, Emacs , Vim (плагин VCSCommand), Komodo IDE , Eric Python IDE , Wing IDE
монотонный ПросмотрMTN, TracMonotone, Monotone-Viz ( GTK +), Guitone ( Qt ), Monotone Browser ( GTK +, Perl ) Un­known
Перфорс Хеликс Ядро включено, P4Web, P4FTP Windows, Linux, Mac, MacOS Затмение , Visual Studio , Матлаб ; Игровые движки: Unity , Unreal , Amazon Lumberyard ; Графика: Autodesk Maya , 3ds Max , Adobe PS.
Концерт команды Rational Да Графический интерфейс на основе Eclipse Интеграция Eclipse; Интеграция с MS Visual Studio (ограничено)
СтарТим включено Интеграция с Windows, Java , Eclipse, Visual Studio, BDS2006, а также командная строка Java. IntelliJ IDEA (стандарт в Ultimate Edition), Visual Studio, JBuilder, Eclipse
Подрывная деятельность Включен модуль Apache 2, WebSVN, ViewSVN, ViewVC , Trac , SharpForge , sventon, Springloops Java, КДЕСВН, macOS [66] (включая интеграцию с Finder), Nautilus, Qt, RabbitVCS , RapidSVN , SourceTree (macOS), TortoiseSVN (Windows Explorer) Anjuta , BBEdit , Eclipse (Subclipse, Subversive), Emacs (стандартный VC), IntelliJ IDEA (стандарт в выпусках Community и Ultimate), KDevelop (стандартный), Komodo IDE , MonoDevelop (стандартный), Netbeans, RabbitVCS (для GEdit), TextMate (плагин SVNMate), Visual Studio ( AnkhSVN , VisualSVN ), Wing IDE . См. также Сравнение клиентов Subversion.
Объемный СКМ Да Windows, macOS, Linux Eclipse , IntelliJ IDEA , JDeveloper , NetBeans , Visual Studio , WebStorm
Синергия через интерфейс Telelogic Change Windows (включая интеграцию с проводником), Linux, Unix Eclipse (собственность Telelogic), Visual Studio (собственность Telelogic), IntelliJ IDEA (собственность Telelogic)
Сейф включено Windows, Unix-подобная, macOS Visual Studio 2003 и выше, Eclipse 3.2 и выше.
Веста ВестаВеб Нет Нет
Визуальный исходный код ни один не включен; SSWI, удаленное взаимодействие VSS Окна включены; Linux, macOS и Solaris с использованием SourceOffSite; любая виртуальная машина Java, использующая Sourceanywhere для VSS Visual Studio, IntelliJ IDEA (стандартно в Ultimate Edition)
Программное обеспечение Веб-интерфейсы Автономные графические интерфейсы Интеграция и/или плагины для IDE

и принятие История

Вот несколько метаданных и историческая справка о нескольких программах контроля версий.

Пояснения к таблице

  • Программное обеспечение : название описываемого приложения.
  • История : кратко описывает происхождение и развитие программного обеспечения.
  • Известные текущие пользователи : список известных проектов, использующих это программное обеспечение в качестве основной системы контроля версий, за исключением самого программного обеспечения, за которым следует ссылка на полный список, если он доступен.
Программное обеспечение История Известные нынешние пользователи
АккуРев СКМ Впервые публично выпущен в 2002 году.
Сервер Azure DevOps Впервые публично выпущен в марте 2006 года как Visual Studio Team System, переименован в Team Foundation Server в 2010 году и Azure DevOps Server в 2019 году. Майкрософт
Службы Azure DevOps Впервые публично выпущен в 2012 году как Team Foundation Service, переименован в Visual Studio Online в 2013 году, Visual Studio Team Services в 2015 году и Azure DevOps в 2018 году. Майкрософт
ГНУ Базар Первоначальный выпуск 26 марта 2005 г. Слабо связан с baz . При поддержке Canonical Ltd.
Биткипер Первоначальный выпуск 4 мая 2000 г. Под влиянием Sun WorkShop TeamWare.
Менеджер по изменениям программного обеспечения CA Оригинальная компания, основанная в 1977 году; CA SCM (тогда называвшаяся CCC/Harvest) впервые была выпущена в 1995 году.
Код IBM DevOps ClearCase Разработан в 1990 году компанией Atria Software на основе концепций, разработанных Apollo Computer в DSEE в 1980-х годах. Самая последняя версия — 9.0.0, выпущенная в марте 2016 года.
Код Кооператив Первая распределенная система управления версиями, продемонстрированная в 1997 году. [67] вскоре выпущен.
CVS Впервые публично выпущен 3 июля 1986 г.; на базе РКС НетБСД , OpenBSD
ЦВСНТ Впервые публично выпущен в 1998 году; на основе CVS . Создан разработчиками CVS с целью добавить поддержку более широкого спектра методов и процессов разработки.
дарки Впервые объявлено 9 апреля 2003 г.
Размеры см Разработан компанией SQL Software под названием «PCMS Dimensions» в конце 1980-х годов (PCMS означает «Управление конфигурацией продукта»). В результате ряда приобретений компаний продукт был выпущен под названиями «PVCS Dimensions» (1990-е, Intersolv), «Dimensions» (начало 2000-х, Merant), «ChangeMan Dimensions» (2004, Serena Software ) и, наконец, « Dimensions CM » (с 2007 г.). , Серена Программное обеспечение ).
Ископаемое Fossil и SQLite используют Fossil с 21 июля 2007 года.
Гит Создан Линусом Торвальдсом в апреле 2005 года, после разногласий по поводу BitKeeper . [68] Ядро Linux , Android , OpenJDK , Bugzilla , DragonFly BSD , FreeBSD , gcc , [69] GNOME , GNU Emacs , GnuPG , [70] GRUB2 , KDE , MySQL , Perl 5 , [71] PostgreSQL , Питон , [72] X.Org , Cairo , среды разработки Qt , Samba , OpenEmbedded , Ruby , Ruby on Rails , Wine , Fluxbox , Openbox , Compiz Fusion , XCB , Xen , ELinks , XMMS2, e2fsprogs , GNU Core Utilities , DokuWiki , Drupal , LibreOffice , MediaWiki , [73] Mono , ASP.NET MVC , ADO.NET Entity Framework , NuGet , jQuery и многие его плагины, OpenCV , Twitter , Netflix , LinkedIn , Wireshark , Django , многие компании, такие как Eclipse Foundation , Ericsson , Microsoft , [74] Хуавей , Эппл , Амазон , ЛГ
GNU арка Созданная Томом Лордом в 2001 году, она позже стала частью проекта GNU . Лорд ушел с поста сопровождающего в августе 2005 года.
IC Управление Разработано компанией IC Manage, Inc, основанной в 2003 году Шивом Сикандом и Дином Драко.
Честность PTC Первоначально разработан MKS Software. Куплен PTC в мае 2011 г. [75]
Меркуриальный Создан 6 апреля 2005 года Мэттом Макколлом после разногласий по поводу BitKeeper . [68] Впервые выпущен 19 апреля 2005 г.
монотонный Впервые выпущен в апреле 2003 года.
Перфорс Хеликс Ядро Разработан компанией Perforce Software, Inc, основанной в 1995 году Кристофером Сейвальдом.
Концерт команды Rational Версия 1.0 выпущена в июне 2008 г.
Система контроля версий июль 1985 г.
Система контроля исходного кода Создан Марком Рочкиндом в 1972 году (файлы двоичной истории, написанные в Snobol на IBM-370, [76] SCCSv4 с файлами текстовой истории был опубликован 18 февраля 1977 года. [77] Тот же формат файла истории по-прежнему используется в SCCS 5.0. [78]
СтарТим Версия 1.0 1995 г.; [79] Разработано программным обеспечением StarBase, приобретенным Borland (который был приобретен Micro Focus).
Подрывная версия Apache Создан в 2000 году разработчиками CVS с целью замены CVS.
Синергия Разработан в 1988 году компанией Caseware как AmplifyControl. В 1994 году компания была переименована в Continuus, после чего продукт стал более известен как Continuus/CM. Continuus была приобретена Telelogic в 1999 году, вскоре после выхода на биржу; продукт был переименован в Telelogic Synergy. IBM приобрела Telelogic в 2008 году для интеграции в свой набор инструментов Rational. Этот продукт теперь известен как IBM Rational Synergy.
Сейф Впервые публично выпущен в феврале 2003 г. Un­known
Веста Впервые публично выпущен под лицензией LGPL в 2001 году.
Визуальный исходный код Первоначально созданная компанией One Tree Software, версия 3.1. Компания была куплена Microsoft, которая выпустила версию VSS 4.0 примерно в 1995 году.
Программное обеспечение История Известные нынешние пользователи

См. также [ править ]

Примечания [ править ]

  1. ^ В ClearCase можно установить триггер, позволяющий использовать модель блокировки, и это делается на многих сайтах. Однако разработка ClearCase обычно происходит в частных ветках, где каждому разработчику предоставляется своя собственная ветка, поэтому модель параллелизма блокировки или слияния не имеет большого значения. Код снова объединяется с основной веткой, как только разработчик готов добавить свой код в проект.
  2. ^ RTC не является распределенной системой контроля версий; но имеет некоторую распределенную функцию, которую можно настроить
  3. ^ Существуют различные ветки исходных исходных кодов Unix, только одна из которых активно поддерживается.
  4. ^ Хотя несколько пользователей могут одновременно редактировать одну и ту же версию файла, только один из них может записать изменения.
  5. ^ Хотя некоторые версии SCCS являются свободным программным обеспечением, другие остаются закрытыми как часть коммерческих дистрибутивов Unix.
  6. ^ В Subversion атрибут файла включает модель блокировки для каждого файла. Этот атрибут файла можно установить автоматически с помощью подстановочных знаков имени файла.
  7. ^ Критические модули Bazaar написаны на Pyrex . Они автоматически переводятся на чистый C ; за исключением модуля сортировки по терпению , используемого при разрешении слияний и написанного непосредственно на C. языке
  8. ^ Пакет Bazaar представляет собой сводный файл различий с достаточной дополнительной информацией для сохранения истории.
  9. ^ Снимки с двоичными файлами. Обсуждается возможность использования двоичных наборов изменений в будущем (darcs 3)
  10. ^ 4 МБ из них sqlite3.c
  11. ^ Номера версий Mercurial являются локальными для репозитория; они могут различаться от репозитория к репозиторию в зависимости от того, в каком порядке выполняются слияния.
  12. ^ Ревизии Monotone представляют собой наборы изменений, а его манифесты представляют собой снимки, каждая редакция связана с некоторым манифестом. Но манифесты — это устаревшие конструкции, они больше не хранятся в базе данных и при необходимости восстанавливаются на лету. Настоящая работа теперь происходит в реестрах, которые представляют собой гибридные структуры моментальных снимков/наборов изменений.
  13. ^ Злые близнецы встречаются часто. Злые близнецы в SCM, а не в Голливуде. Архивировано 16 октября 2013 г. в Wayback Machine.
  14. ^ Атомная фиксация может быть включена для отдельных проверок ClearCase 7.1.1. Примечания к выпуску .
  15. ^ См. Часто задаваемые вопросы .
  16. ^ Каждый патч darcs имеет уникальный идентификатор, поэтому невозможно дважды объединить один и тот же патч в репозитории (без деструктивного изменения истории с помощью «небезопасных» команд).
  17. ^ Хотя он хранит (и показывает по умолчанию) 8-битное имя файла. См . часто задаваемые вопросы
  18. ^ Использование атрибутов редакции элемента ( демонстрация «Работа с элементами», охватывающая определяемые пользователем атрибуты. Архивировано 4 марта 2016 г. на Wayback Machine ).
  19. ^ В том смысле, что его сообщения и графические интерфейсы имеют только английскую локализацию, хотя программное обеспечение сертифицировано и отлично работает в операционных системах на разных языках.
  20. ^ Управляется настройкой crnl-glob ( [1] )
  21. ^ Git не отслеживает переименования явным образом, поскольку по своей конструкции он не отслеживает отдельные файлы. Переименования и разделения исходных файлов обнаруживаются постфактум, если содержимое файла не изменилось кардинально.
  22. ^ Начиная с git-1.7.9 (см. примечания к выпуску. Архивировано 15 апреля 2013 г. на archive.today ). Старые версии не подписывают коммиты, а только теги (см. параметр -s на странице руководства git-tag(1) ).
  23. ^ Имена файлов UTF-8 поддерживаются начиная с версии 1.7.10 ( примечания к выпуску MSysGit ).
  24. ^ У Git есть некоторые проблемы с очень большими репозиториями. См. раздел «Лучшая поддержка больших файлов» и раздел «Проектирование более быстрого формата индекса в идеях SoC 2012» .
  25. ^ Пакеты изменений с поддержкой целостности обеспечивают полный рабочий процесс и цифровые подписи, соответствующие требованиям 21 CFR Part 11, для элемента, контролирующего пакет изменений.
  26. ^ В SP5 2009 г. добавлена ​​функция объединения путей развития детей.
  27. ^ Mercurial включает интернационализацию для более чем 10 языков по состоянию на 2017 год.
  28. ^ Поддержка зависит от операционной системы хоста и хорошо поддерживается в Unix, но не в ОС Windows из-за отсутствия поддержки хоста. См . [2]
  29. ^ Это можно сделать с помощью хуков пользовательского уровня.
  30. ^ Perforce будет контролировать версии сами по себе символические ссылки, но не распознает свои собственные представления с контролем версий (локальные деревья файлов), если вы получаете к ним доступ через символические ссылки.
  31. ^ Через компоненты поведения процесса: Советники операции и Участники операции. http://jazz.net/library/article/292
  32. ^ Хотя исходный код SCCS был написан для поддержки интернационализации, существуют только тексты сообщений на английском языке.
  33. ^ StarTeam поддерживает атомарные коммиты начиная с версии 2006.
  34. ^ Subversion может переместить файл и сохранить его историю тогда и только тогда, когда цель перемещения находится в том же репозитории Subversion, что и источник. Для перемещения между репозиториями требуются сторонние инструменты.
  35. ^ Поскольку субверсия SVN 1.8 поддерживает улучшенное отслеживание перемещений на стороне клиента. На стороне сервера он пока не поддерживается.
  36. ^ «Подписание набора изменений» . Списки рассылки Apache Subversion . Проверено 5 августа 2016 г.
  37. ^ Новое в SVN 1.5 < http://subversion.apache.org/docs/release-notes/1.5.html#merge-tracking >. Отдельный инструмент «svnmerge» < [3] > обеспечивает отслеживание слияний для старых версий.
  38. ^ В Subversion теги представляют собой частный случай более общей концепции Subversion «дешевой копии». Согласно соглашению, тег — это копия в каталог с именем «tags». Из-за этого даже теги версионируются. см . на странице http://svnbook.red-bean.com/nightly/en/svn.branchmerge.tags.html Дополнительную информацию . Причина частичной поддержки в таблице заключается в том, что эмуляция тегов Subversion таким способом не отвечает требованию, согласно которому имя тега может использоваться вместо любого идентификатора версии, где бы пользователю ни потребовалось его ввести. Этот столбец был бы бессмысленным, если бы определение было достаточно ослаблено, чтобы охватить подход Subversion, поскольку каждая система контроля версий поддерживает ветвление и, следовательно, также поддерживает теги.
  39. ^ в азиатских выпусках (от v6.6a до v7.1a) и вообще начиная с версии 7.2.
  40. ^ История изменений версий удаляется при переименовании; старое имя не упоминается.
  41. ^ не реализовано еще
  42. ^ Невозможно отключить в динамических представлениях.
  43. ^ Использование псевдонима файла CVSROOT/modules.
  44. ^ CVS записывает исполняемый бит при добавлении файла, но не позволяет изменить его позже.
  45. ^ Это функция графического интерфейса, поддерживаемая TortoiseCVS и WinCVS, оба из которых включают/используют CVSNT.
  46. ^ То же, что и CVS, плюс также возможность иметь реплицированные репозитории, включая «теневые» репозитории.
  47. ^ Используйте имя модуля/каталога или псевдоним, созданный с помощью административного файла CVSROOT/modules или CVSROOT/modules2.
  48. ^ CVSNT поддерживает это, если используемый инструмент создания/сборки также поддерживает это.
  49. ^ Darcs может выполнять разреженные проверки из явных контрольных точек в репозиториях darcs-1, но не из репозиториев darcs-2. [ нужна ссылка ]
  50. ^ Darcs может автоматически обнаруживать #! скрипты и сделать их исполняемыми при оформлении заказа.
  51. ^ Использование функций подпроекта ( Портфель документации | Руководство пользователя | Связь проекта или потока с другими объектами ).
  52. ^ Кассы можно вкладывать с помощью «fossil open –nested».
  53. ^ В FAQ по Git говорится, что расширение ключевых слов — это нехорошо.
  54. ^ add -i и add -p , см. страницу руководства git-add(1).
  55. ^ Часто задаваемые вопросы по Git объясняют, почему сохранение времени модификации считается вредным.
  56. ^ Настраивается на сервере как опция проекта и на клиенте как опция пользователя.
  57. ^ С помощью сторонних инструментов, таких как Tortoise SVN .
  58. ^ SVN не может сохранять время изменения файла. По запросу клиента он может восстановить время регистрации как время последнего изменения. По умолчанию отключено.
  59. ^ MIME-тип файла должен определяться как «удобочитаемый» MIME-тип, даже если инструмент слияния может работать с файлами, нечитаемыми человеком.
  60. ^ Автономная ветвь , заархивировано из оригинала 4 марта 2016 г. , получено 6 ноября 2014 г.
  61. ^ Общий репозиторий , заархивировано из оригинала 4 марта 2016 г. , получено 6 ноября 2014 г.
  62. ^ Автономная ветвь , заархивировано из оригинала 4 марта 2016 г. , получено 6 ноября 2014 г.
  63. ^ Heavyweight Checkout и Lightweight Checkout , заархивировано из оригинала 30 июня 2016 г. , получено 6 ноября 2014 г.
  64. ^ плагин перебазирования
  65. ^ darcs не имеет именованных ветвей, локальных или нет, ветвление осуществляется исключительно посредством клонирования репозитория.
  66. ^ darcs send подготавливает пакет исправлений, по умолчанию отправляет его по почте, но вместо этого может отправить его в файл.
  67. ^ копии обнаруживаются постфактум, как и переименования.
  68. ^ Закладки Mercurial аналогичны местным филиалам.
  69. ^ SCCS имеет неявные блокировки, применяемые при оформлении заказа через edit, удаляется при создании дельты.
  70. ^ Любым из различных способов поместите (неизменяемый) файл в неизменяемый каталог перед vcheckin.
  71. ^ mv(1) или link(2) неизменяемый файл из исходного неизменяемого каталога в неизменяемый каталог назначения до vcheckin.
  72. ^ С помощью любого из различных способов скопируйте неизменяемый файл из исходного неизменяемого каталога в неизменяемый каталог назначения перед vcheckin.
  73. ^ Это также можно включить в качестве центрального параметра в панели управления сервером репозитория или в файле конфигурации.
  74. ^ Требуются права администратора. Можно «откатить» изменение, используя «cvs update –e –j @commitid –j «@<commitid»», но свидетельства изменения и отката останутся в истории.
  75. ^ да — используйте TortoiseCVS или WinCVS, чтобы зафиксировать изменение в месте назначения и выбрать, какие конкретные файлы следует сохранить.
  76. ^ bisect также доступен для cvs, который должен работать с CVSNT.
  77. ^ darcs работают с патчами, а не с ревизиями, выборка просто заключается в перетаскивании данного патча из одного репозитория в другой, пока выполняются зависимости
  78. ^ Тайник с окаменелостями поддерживает несколько полок с комментариями.
  79. ^ git stash — многоуровневая полка, можно одновременно откладывать несколько групп изменений
  80. ^ Работает только с локальным репозиторием и только с ревизиями без дочерних элементов. Альтернативой может быть команда отклонения.
  81. ^ экспериментально в SVN 1.10 ( примечания к выпуску )
  82. ^ Инструмент SVN Bisect svn-bisect
  83. ^ svn status перечисляет различия между рабочей копией и репозиторием, а не различия между двумя репозиториями.
  84. ^ hgweb для доступа к одному репозиторию и hgwebdir для доступа к нескольким репозиториям с одного HTTP-адреса

Ссылки [ править ]

  1. ^ «Список членов команды CVS» , Саванна, не принадлежащая к GNU , Проект GNU
  2. ^ CVS Pro , Мартовский Заяц
  3. ^ «Как купить» . perforce.com . Проверено 18 января 2018 г.
  4. ^ Лицензирование и ценообразование , PlasticSCM
  5. ^ «Что такое распределенная система контроля версий» . ГитЛаб.
  6. ^ Жан-Мишель Лемье, Обратный отсчет до следующего концерта Rational Team: Часть II – Улучшения системы управления версиями , Jazz Community, заархивировано из оригинала 10 сентября 2015 г. , получено 28 декабря 2010 г.
  7. ^ Фонд программного обеспечения Apache
  8. ^ Rational Synergy , IBM, 9 ноября 2020 г.
  9. ^ Система управления конфигурациями Vesta , Sourceforge, 5 июня 2013 г.
  10. ^ Система управления конфигурацией Vesta , Веста
  11. ^ IBM – Rational ClearCase – США , 9 ноября 2020 г.
  12. ^ «Наборы изменений» . Мартовский Заяц Программное обеспечение, ООО . Проверено 8 мая 2012 г.
  13. ^ Технический обзор ископаемых
  14. ^ Политика ископаемых хэшей
  15. ^ Протокол сервера Git
  16. ^ «Git — быстрая, масштабируемая, распределенная система контроля версий» . Гитхаб . 2 ноября 2021 г.
  17. ^ «Архивная копия» (PDF) . Архивировано из оригинала (PDF) 13 ноября 2011 г. Проверено 12 января 2012 г. {{cite web}}: CS1 maint: архивная копия в заголовке ( ссылка )
  18. ^ «Новости SCM – Kronos обращается к AccuRev для управления конфигурацией программного обеспечения» . АккуРев. 26 апреля 2004 г. Архивировано из оригинала 2 февраля 2014 г. Проверено 26 января 2014 г.
  19. ^ «Повышение производительности и масштабируемости для кроссплатформенных географически распределенных команд» . АккуРев. 23 сентября 2008 г. Архивировано из оригинала 2 февраля 2014 г. Проверено 26 января 2014 г.
  20. ^ «Преобразования EOL поддерживаются начиная с bzr 1.14» . Doc.bazaar-vcs.org. Архивировано из оригинала 13 апреля 2009 г. Проверено 26 января 2014 г.
  21. ^ Политика поддержки национальных языков и ClearCase от службы поддержки IBM.
  22. ^ С расширением Largefiles в ядре, начиная с Hg Rev.:2.0 (2011) , расширением Remotefilelog (2014) , расширением fsmonitor в ядре, начиная с Hg Rev.:3.8 (2016), и экспериментальным разреженным расширением в ядре , начиная с Hg Rev.: 4.3 (2017 г.) .
  23. ^ [4] Архивировано 10 февраля 2014 г. на Wayback Machine из Perforce. Руководства пользователя
  24. ^ [5] Архивировано 9 февраля 2014 г. на Wayback Machine из Perforce. Руководства пользователя
  25. ^ «Общественная база знаний Perforce – главная страница» . Perforce.com. Архивировано из оригинала 14 августа 2007 г. Проверено 26 января 2014 г.
  26. ^ «База знаний Perforce: интернационализация и локализация» . КБ.perforce.com. 21 октября 2010 г. Архивировано из оригинала 8 февраля 2012 г. Проверено 26 января 2014 г.
  27. ^ «База знаний Perforce: интернационализация и локализация» . КБ.perforce.com. 21 октября 2010 г. Архивировано из оригинала 30 января 2013 г. Проверено 26 января 2014 г.
  28. ^ [6] - Релизы Seapine Software Surround SCM 2009
  29. ^ «GitCentric | AccuRevGit для предприятия» . Accurev.com. Архивировано из оригинала 17 октября 2012 г. Проверено 26 января 2014 г.
  30. ^ «Плагин ключевых слов Bazaar» . Wiki.bazaar.canonical.com. 05 сентября 2005 г. Архивировано из оригинала 1 февраля 2014 г. Проверено 26 января 2014 г.
  31. ^ «Интерактивный плагин Базара» . Launchpad.net. 7 марта 2008 года . Проверено 26 января 2014 г.
  32. ^ «Плагин Bazaar externals» . Launchpad.net. 9 ноября 2009 года . Проверено 26 января 2014 г.
  33. ^ «Игнорировать операцию слияния для данного расширения» . 4 марта 2010 г.
  34. ^ "бзр-свн" . Launchpad.net. 8 мая 2006 г. Проверено 26 января 2014 г.
  35. ^ "бзр-гит" . Launchpad.net. 15 июля 2006 года . Проверено 26 января 2014 г.
  36. ^ "бзр-хг" . Launchpad.net. 13 июня 2006 г. Проверено 26 января 2014 г.
  37. ^ IBM Rational ClearCase: десять лучших триггеров от IBM DeveloperWorks
  38. ^ Манифест , Форматы файлов ископаемых.
  39. ^ «Импорт и экспорт ископаемых» . Fossil-scm.org. 22 января 2014 г. Архивировано из оригинала 2 февраля 2014 г. Проверено 26 января 2014 г.
  40. ^ "FossilHelp: импорт"
  41. ^ «Страница руководства git-submodule(1)» . Кернел.орг. 15 февраля 2013 г. Проверено 26 января 2014 г.
  42. ^ "Страница руководства git-read-tree(1)" . ядро.org. 24 августа 2014 г. Проверено 24 октября 2014 г.
  43. ^ «Страница расширения ключевого слова Mercurial» . Mercurial-scm.org . Проверено 26 января 2014 г.
  44. ^ «Страница Mercurial RecordExtension» . Mercurial-scm.org. 27 августа 2013 г. Проверено 26 января 2014 г.
  45. ^ «Субрепозиторий – Mercurial» . Mercurial-scm.org . Проверено 22 апреля 2016 г.
  46. ^ С разреженным расширением, включенным в ядро, начиная с Hg Rev.:4.3 .
  47. ^ «Расширение временной метки Mercurial» . Mercurial-scm.org. 24 апреля 2012 г. Проверено 26 января 2014 г.
  48. ^ «Конфигурация инструмента объединения» . Mercurial-scm.org. 14 марта 2017 г. Проверено 5 сентября 2017 г.
  49. ^ «страница hgsubversion» . Mercurial-scm.org. 28 августа 2013 г. Проверено 26 января 2014 г.
  50. ^ «Плагин Hg-Git Mercurial» . Hg-git.github.com . Проверено 26 января 2014 г.
  51. ^ «Страница Mercurial ConvertExtension» . Mercurial-scm.org. 29 ноября 2013 г. Проверено 26 января 2014 г.
  52. ^ «Mercurial: полное руководство: Приложение: Переход на Mercurial»
  53. ^ Jump up to: Перейти обратно: а б с «Руководство пользователя P4» . Перфорс . Проверено 19 января 2018 г.
  54. ^ «Подмена ключевых слов» . Svnbook.red-bean.com . Проверено 26 января 2014 г.
  55. ^ «Определения внешних факторов» . Svnbook.red-bean.com . Проверено 26 января 2014 г.
  56. ^ Jump up to: Перейти обратно: а б darcs по умолчанию команда извлечения является интерактивной, позволяя пользователю выбирать, какие патчи применять (объединять) в реальном времени.
  57. ^ «Расширение Mercurial Rebase» . Mercurial-scm.org. 25 октября 2012 г. Проверено 23 апреля 2014 г.
  58. ^ «ошибка 6463 – enh: поиск по репозиторию» . Проверено 8 мая 2012 г.
  59. ^ «Страница расширения Mercurial Shelf» . Mercurial-scm.org. 07.11.2013 . Проверено 26 января 2014 г.
  60. ^ «Страница расширения Mercurial Strip» . Mercurial-scm.org . Проверено 11 мая 2016 г.
  61. ^ «команда трансплантата (начиная с Hg Rev.2.0)» . Селеник.com . Проверено 26 января 2014 г.
  62. ^ «Страница расширения Mercurial Transplant» . Mercurial-scm.org. 12 мая 2012 г. Проверено 26 января 2014 г.
  63. ^ «Перфорс-брокер» . Perforce.com. Архивировано из оригинала 16 ноября 2013 г. Проверено 26 января 2014 г.
  64. ^ «База знаний Perforce: интеграция с выбором вишни» . КБ.perforce.com. 01.01.1990. Архивировано из оригинала 9 марта 2012 г. Проверено 26 января 2014 г.
  65. ^ «Поддерживаемые интеграции – целостность PTC» . Мкс.ком. 10 сентября 2012 г. Архивировано из оригинала 25 июля 2012 г. Проверено 26 января 2014 г.
  66. ^ «The Thing: веб-агентство и производитель программного обеспечения – веб-агентство и разработка программного обеспечения» . Архивировано из оригинала 18 июня 2016 г. Проверено 20 сентября 2006 г.
  67. ^ Распределенная система контроля версий . Портал.acm.org. 18 мая 1997 г. стр. 98–107. ISBN  9783540630142 . Проверено 26 января 2014 г.
  68. ^ Jump up to: Перейти обратно: а б На пути к лучшему SCM: Revlogs и Mercurial , представлено Мэттом Макколлом на симпозиуме Linux в Оттаве, июль 2006 г.
  69. ^ «GCC: анонимный доступ к Git только для чтения» . Проверено 24 октября 2023 г.
  70. ^ «Руководство хакера по GnuPG» . 11 марта 2021 г. Проверено 24 октября 2023 г.
  71. ^ «Получение исходного кода Perl и работа с ним» . dev.perl.org . Проверено 26 января 2014 г.
  72. ^ «Установка и построение» . Python.org . Проверено 24 октября 2023 г.
  73. ^ «Гит» . МедиаВики . Проверено 1 августа 2012 г.
  74. ^ «Самый большой репозиторий Git на планете» . 24 мая 2017 г.
  75. ^ «PTC устанавливает новый стандарт управления жизненными циклами разработки оборудования и программного обеспечения с помощью MKS Integrity Acquisition — PTC Integrity» . Мкс.ком. Архивировано из оригинала 22 июля 2014 г. Проверено 26 января 2014 г.
  76. ^ Рочкинд, Марк Дж. (декабрь 1975 г.), «Система управления исходным кодом» (PDF) , Транзакции IEEE по разработке программного обеспечения , том. СЭ-1, нет. 4, стр. 364–370, doi : 10.1109/tse.1975.6312866 , S2CID   10006076 , заархивировано из оригинала (PDF) 25 мая 2011 г. , получено 31 июля 2014 г.
  77. ^ http://minnie.tuhs.org/cgi-bin/utree.pl?file=PWB1/usr/news/pibs Объявление о продукте PWB UNIX
  78. ^ Сравните формат файла SCCS 4 с файлом SCCS 5.0, заархивированным 19 августа 2014 г. в формате файла Wayback Machine (как man-страница sccsfile(4) в «Архивная копия» . Архивировано из оригинала 19 августа 2014 г. Проверено 17 августа 2014 г. {{cite web}}: CS1 maint: архивная копия в заголовке ( ссылка )
  79. ^ Стартим®

Внешние ссылки [ править ]

Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 66a04ff8711c480b0c62894cc7246109__1718063640
URL1:https://arc.ask3.ru/arc/aa/66/09/66a04ff8711c480b0c62894cc7246109.html
Заголовок, (Title) документа по адресу, URL1:
Comparison of version-control software - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)