Контроль версий Unity
![]() | В этой статье есть несколько проблем. Пожалуйста, помогите улучшить его или обсудите эти проблемы на странице обсуждения . ( Узнайте, как и когда удалять эти шаблонные сообщения )
|
Разработчик(и) | Программный код |
---|---|
Первоначальный выпуск | 31 октября 2006 г |
Стабильная версия | 9,0 / 21 августа 2020 г |
Операционная система | Microsoft Windows , Linux , Mac OS |
Платформа | .NET / Моно |
Размер | 93 МБ (установщик Windows) |
Тип | Контроль версий |
Лицензия | Собственный |
Веб-сайт | www |
Управление версиями Unity (ранее известное как Plastic SCM ) [1] — это кроссплатформенный коммерческий распределенный инструмент контроля версий, разработанный Códice Software для Microsoft Windows , Mac OS X , Linux и других операционных систем. Он включает в себя инструмент командной строки , собственные графические интерфейсы , инструмент сравнения и слияния , а также интеграцию с рядом IDE . Это полный стек контроля версий, не основанный на Git (хотя он может с ним взаимодействовать).
Функции
[ редактировать ]Unity Version Control — это полноценная платформа стека контроля версий. Он включает в себя такие компоненты:
- Сервер
- Клиент командной строки
- графические интерфейсы
- Инструменты сравнения и слияния [2]
- Веб-интерфейс [3]
- Веб-интерфейс администратора [4]
Некоторые из его особенностей включают в себя:
- Поддержка тяжелого ветвления и слияния. По словам его создателей, Unity Version Control может обрабатывать неограниченное количество ветвей и сложных сценариев слияния. [5]
- Визуальный обозреватель ветвей: временная шкала для представления ветвей, слияний и изменений в репозиториях, реализованная во всех графических интерфейсах. [6]
- Безопасность на основе ACL: каждый объект в системе можно защитить с помощью списков контроля доступа. [7]
- Встроенное трехстороннее слияние и параллельное сравнение, включая языковую поддержку и историю определенного метода или функции. [8]
- Управление версиями каталогов и поддержка переименований версий.
- История изменений разветвленных, переименованных, перемещенных, скопированных и удаленных файлов.
- Обвинить/Аннотировать
- Централизованное управление (стиль SVN/Perforce)
- Распределенная операция (стиль Git/Mercurial)
- Атомарные фиксации — сервер гарантирует, что наборы изменений будут полностью зафиксированы в репозитории.
- Стеллажи — пользователи могут сохранять и восстанавливать незавершенную работу для переключения задач.
- Поддержка файлов ASCII, Unicode , двоичных файлов, символических ссылок Mac и UTF-16. (в Unix), файлов
- Поддержка платформ Mac OS X, Windows и Linux.
- Триггеры событий на стороне сервера и на стороне клиента [9]
- Поддержка сети с высокой задержкой: сетевой протокол, используемый Unity Control Version, оптимизирован для высокоскоростных сетей с высокой задержкой. [10]
- Gluon: графический интерфейс и рабочий процесс для неразработчиков (специально ориентирован на разработку игр) [11]
- Блокировка: двоичные файлы и ресурсы, которые невозможно объединить, могут использовать блокировку вместо ветвления/слияния. [12]
Дизайн
[ редактировать ]Unity Version Control — это клиент-серверная система, хотя в современных терминах контроля версий ее также можно определить как распределенную систему контроля версий из-за ее способности иметь очень легкие серверы на компьютере разработчика и перемещать и вытягивать ветки между серверами (аналогично тому, что делают Git и Mercurial ). Разработчики работают с файлами в своих клиентских рабочих пространствах и фиксируют измененные файлы вместе в наборах изменений.
Хранилище
[ редактировать ]Unity Version Control имеет два разных семейства хранилищ для всех данных и метаданных:
- Jet: специальное хранилище, рассчитанное на высокую производительность и выпущенное в версии 6.0. Теперь это хранилище по умолчанию.
- Реляционные базы данных. Традиционно Unity Control поддерживает хранение всех данных и метаданных в реляционных базах данных: MySQL, SQL Server, SQLite, SQL Server Compact Edition, Firebird, Firebird Embedded, Postgresql и Oracle. Реляционные базы данных по-прежнему поддерживаются, хотя Jet теперь является опцией по умолчанию. [13]
Режимы работы
[ редактировать ]Управление версиями Unity может работать в двух режимах:
- Централизованный: с рабочими пространствами (рабочими копиями), подключенными непосредственно к серверу. Пользователи выполняют операции возврата без необходимости дополнительного шага push.
- Распределенное: пользователи размещают свои собственные репозитории на своих компьютерах и отправляют их на центральный сервер. [14]
Отличия от Git
[ редактировать ]Unity Version Control SCM не основан на Git, хотя может выступать в качестве сервера Git и клиента Git. Различия можно резюмировать следующим образом: улучшения в слиянии, встроенная поддержка больших файлов и проектов, дополнительная блокировка файлов, возможность работать распределенно и централизованно. Есть различия и в структуре ветвления: если в Git ветки — это просто указатели, то в Unity Version Control ветки — это контейнеры. Unity Version Control создает версии каталогов и файлов, идентифицируя их с помощью «идентификаторов элементов», что полезно для отслеживания перемещения/переименования, в то время как Git полагается на различия для восстановления переименований/перемещений и не версионирует каталоги. [15]
Совместимость с другими системами контроля версий.
[ редактировать ]Гит
[ редактировать ]Unity Version Control может взаимодействовать с Git следующими способами:
- GitSync: каждый клиент управления версиями Unity может извлекать и отправлять данные из репозитория Git. [16]
- GitServer: сервер управления версиями Unity может действовать как сервер Git, поэтому любой клиент git может отправлять/извлекать данные на сервер управления версиями Unity.
- Поддержка быстрого импорта/экспорта. Доступны команды быстрого экспорта и быстрого импорта для экспорта репозиториев Unity Control Version в промежуточный формат Git и импорта из промежуточного формата Git. [17]
Перфорс
[ редактировать ]Unity Version Control может выполнять двунаправленную синхронизацию с хранилищами Perforce для упрощения миграции. [18]
Другие элементы управления версиями
[ редактировать ]Импорт/экспорт из других систем осуществляется с помощью формата быстрого импорта/экспорта Git.
Доступность, цикл выпуска и поддерживаемые платформы.
[ редактировать ]Управление версиями Unity можно загрузить с панели управления Unity Cloud. [19] или на сайте Plasticscm.com. [20] . Основные выпуски публикуются ежегодно в виде готовых исполняемых файлов для Microsoft Windows , Mac OS X и Linux . [21]
Незначительные выпуски доступны еженедельно.
Лицензирование и условия использования
[ редактировать ]Unity Version Control бесплатен для частных лиц (Personal Edition), некоммерческих организаций и проектов с открытым исходным кодом (Community Edition). [ нужна ссылка ]
Cloud Edition — коммерческая версия для команд, которым не нужен локальный сервер. Клиенты платят за ежемесячно активного пользователя и облачное хранилище. В подписку входит все программное обеспечение Unity Control Version.
Enterprise Edition — это коммерческая версия для команд более 15 пользователей, обычно используемая корпорациями. Его можно приобрести в режиме бессрочной версии или с ежемесячной или годовой подпиской. [22]
История
[ редактировать ]Codice Software была основана в августе 2005 года при поддержке инвестора-ангела и основателей. [23] Целью было создать систему контроля версий, более мощную, чем SVN, в плане ветвления и слияния и более доступную для малого и среднего бизнеса, чем коммерческие альтернативы, доступные в то время. В октябре 2006 года они выпустили первую версию Plastic SCM и были официально представлены на Tech Ed 2006 в Барселоне . [24] [25]
В 2007 году Codice стала первым испанским МСП, достигшим CMMI L2 с использованием SCRUM. [26]
Plastic SCM была отмечена Novell как одна из компаний, использующих Mono в коммерческих целях. [27]
Plastic SCM 2.0 был запущен в марте 2008 года. [28]
В 2009 году Codice получает первый раунд венчурного капитала при поддержке Bullnet Capital, испанской фирмы, специализирующейся на технологических компаниях. [29]
Plastic SCM стал финалистом премии Jolt Award в категории «Управление изменениями и конфигурациями», объявленной в декабре 2008 года. [30]
Plastic SCM 3.0 был запущен в июле 2010 года. [31] и там был представлен Xdiff/Xmerge: их первый подход к отслеживанию перемещенного кода при различиях и слияниях.
В декабре 2010 года Plastic SCM анонсирует «историю метода» — функцию, которая позволяет пользователю рассчитывать историю данного метода/функции вместо истории всего файла. [32]
В 2011 году Франсиско Монтеверде присоединился к компании в качестве генерального директора, а Пабло Сантос, основатель, был назначен техническим директором и президентом правления. [33]
Plastic SCM 4.0 был запущен 23 ноября 2011 г. [34] [35] и внесло серьезные изменения во внутреннюю структуру: управление версиями и отслеживание слияний было перенесено с подхода для каждого файла на подход для каждого набора изменений, что помогло улучшить позднее взаимодействие с Git. [36]
Начиная с версии 4.0, Plastic стал больше ориентироваться на разработку игр, особенно учитывая слабые стороны Git с точки зрения больших репозиториев и файлов. [37]
Версия 4.1 была запущена в апреле 2012 года. [38]
В 2013 году Codice запускает SemanticMerge — инструмент, который различает и объединяет данные на основе структуры кода, а не текста. [39] Позже технология была интегрирована в Plastic. Semantic основывается на предыдущей работе, проделанной над инструментом Xdiff/Xmerge. Позже в том же году Semantic добавила поддержку Java в дополнение к первоначальному предложению .NET. [40] Пабло Сантос представил обнаружение межфайловых различий и слияний на QCon 2013 в Сан-Франциско. [41]
В 2013 году Plastic SCM начал поддерживать сетевой протокол Git, который практически превращает любую установку Plastic в клиент Git. [42]
Plastic SCM 5.0 запущен в сентябре 2013 года. [43] Он имеет встроенный семантический diff, обнаружение рефакторинга. [44] и история метода. [45] Другими функциями являются безопасность на основе путей, списки изменений клиентов и улучшенные скрытые правила.
Версия 5.4 позже расширяет некоторые из этих функций и добавляет еще несколько: зашифрованные серверы, JavaCLI (клиент Java для поддержки сценариев HP-UX и Solaris), многоядерную загрузку и загрузку файлов, Plastic Gluon (разработанный в сотрудничестве с Telltale). [46] ), графический интерфейс для художников, занимающихся разработкой игр, оптимизированная для глобальной сети передача данных, подмодули, трансформируемые рабочие пространства.Plastic 5.4 развивается как основная версия Plastic, и в декабре 2014 года запускается новый собственный графический интерфейс для Linux, заменяющий предыдущий кроссплатформенный. [47] Версия 5.4 также включает в себя новый графический интерфейс MacOS.
В январе 2016 года Plastic Cloud была запущена как система облачного репозитория. [48]
В марте 2016 года была запущена Plastic Cloud Edition — новая версия, предназначенная для команд, которым не нужен локальный сервер. [49]
Версия 6.0 была наконец выпущена в январе 2017 года. [50] Он оснащен новой системой хранения данных Jet, полной обратной совместимостью до 5.0 и поддержкой плавающих лицензий. Версия 6.0 продолжает развиваться в течение 2017 года.
Plastic SCM 7.0 был запущен в марте 2018 года. [51] включая новый дизайн Branch Explorer, новый веб-интерфейс администрирования и улучшения графических интерфейсов MacOS и Linux.
Функция mergebots была запущена в сентябре 2018 года. Mergebots — это способ реализации DevOps с помощью серверных агентов, которые определяют, когда необходимо объединить ветки, после их тестирования в системе CI. [52] Plastic SCM 8.0 был выпущен в январе 2019 года.
17 августа 2020 года стало известно, что Unity Technologies , создатели игрового движка Unity , приобрели Codice Software. [53] [54]
См. также
[ редактировать ]- Список программного обеспечения для контроля версий
- Сравнение программного обеспечения для контроля версий
Примечания
[ редактировать ]- ^ «Контроль версий Unity» . Архивировано из оригинала 16 июля 2024 года . Проверено 2 августа 2024 г.
- ^ XDIFF И XMERGE
- ^ WebUI: переработанный веб-интерфейс для Plastic.
- ^ webadmin - представляем новый инструмент администрирования сервера.
- ^ слияниеМашина
- ^ Обозреватель ветвей
- ^ БЕЗОПАСНОСТЬ
- ^ Семантический контроль версий
- ^ РУКОВОДСТВО ПО ТРИГГЕРАМ
- ^ Оптимизирован сетевой канал для высокой задержки.
- ^ Глюон: Контроль версий для художников
- ^ РУКОВОДСТВО АДМИНИСТРАТОРА PLASTIC SCM: Глава 7: Настройка эксклюзивного оформления заказа (блокировка)
- ^ История Jet: сверхбыстрое репо-хранилище Plastic
- ^ Plastic SCM - DVCS на уровне предприятия
- ^ Plastic SCM против Git — издание 2018 г.
- ^ GitSync для Plastic SCM с собственными протоколами Git и поддержкой Visual Studio 2012.
- ^ ОСНОВНЫЕ ОСОБЕННОСТИ PLASTIC SCM ДЛЯ ПОЛЬЗОВАТЕЛЕЙ GIT
- ^ [ссылка: https://www. Plasticscm.com/perforce Plastic SCM для команд Perforce]
- ^ «Начало работы с контролем версий Unity через клиент рабочего стола» . docs.unity.com . Архивировано из оригинала 15 апреля 2024 года . Проверено 2 августа 2024 г.
- ^ «Пластик СКМ — Скачать Пластик СКМ» . www.plasticscm.com . Архивировано из оригинала 10 июля 2024 года . Проверено 2 августа 2024 г.
- ^ Мигель де Икаса о пользовательском интерфейсе Plastic SCM в Linux и Mac OS X
- ^ Основные обновления PlasticSCM
- ^ LinkedIn: Пабло Сантос
- ^ СИМО 2006 г.
- ^ Plastic SCM – DVCS на уровне предприятия Plastic SCM – DVCS на уровне предприятия
- ^ Codice Software демонстрирует новый инструмент SCM
- ^ Компании, использующие Mono
- ^ Набор Plastic SCM 2.0 для параллельных проектов разработки.
- ^ Innova.- Компания венчурного капитала Bullnet Capital становится акционером вальядолидской компании Códice Software.
- ^ Продукты Embarcadero являются финалистами премии Jolt Award в нескольких категориях.
- ^ Codice включает XMerge/XDiff 2.0 в выпуск Plastic SCM.
- ^ Объявляем историю метода
- ^ Франсиско Монтеверде становится новым генеральным директором Códice Software.
- ^ Запуск Plastic SCM 4.0: новые функции в Plastic SCM 4.0 от Пабло Сантоса
- ^ Программное обеспечение Codice запускает Plastic SCM 4.0; Проблемы Git и Perforce в DVCS
- ^ Пластиковые внутренние детали: от 3,0 до 4,0.
- ^ Codice Software представляет Plastic SCM 4.0 для разработки игр, успешное сотрудничество с Digital Legends Entertainment
- ^ Plastic SCM уделяет внимание деталям в управлении исходным кодом
- ^ Инструмент слияния, который понимает функции
- ^ Codice добавляет поддержку Java в свой инструмент слияния с учетом кода
- ^ InfoQ - QCon, Сан-Франциско, 2013 - Рефакторинг в эпоху DVCS - Введите семантическое слияние
- ^ GitSync для Plastic SCM с собственными протоколами Git и поддержкой Visual Studio 2012.
- ^ Сегодня вышли две новые версии Plastic SCM.
- ^ Семантический контроль версий
- ^ Особенности пластика SCM
- ^ Как Telltale Games осуществляет контроль версий
- ^ Собственный графический интерфейс Linux — gtkplastic
- ^ Пластиковое облако уже доступно!
- ^ Пластиковое SCM Cloud Edition
- ^ Выпуск 6.0.16.804
- ^ Выпуск 7.0.16.2047.
- ^ Добавьте мержбота в свой репозиторий!
- ^ «Unity приобретает программное обеспечение Codice для управления рабочими процессами 3D» . ВенчурБит . 17 августа 2020 г. Проверено 17 августа 2020 г.
- ^ Бартон, Сет (17 августа 2020 г.). «Unity приобретает Codice Software, разработчика Plastic SCM | Новости разработки» . MCV/РАЗРАБОТКА . Проверено 17 августа 2020 г.
Ссылки
[ редактировать ]- Крил, Пол (24 марта 2008 г.), «Plastic SCM 2.0, установленный для параллельных проектов разработки» , InfoWorld , получено 14 марта 2012 г.
- Фейнман, Джефф (1 декабря 2009 г.), «Codice расширяется с новой версией инструмента SCM» , SD Times , получено 14 марта 2012 г.
- Норфолк, Дэвид (30 июля 2007 г.), «Codice Software демонстрирует новый инструмент SCM» , The Register , получено 14 марта 2012 г.
- Сериньезе, Кэти (15 июля 2010 г.), «Codice включает XMerge/XDiff 2.0 в выпуск Plastic SCM» , SD Times , получено 14 марта 2012 г.
- МакКоннел, Тони (27 апреля 2010 г.), «ESC — Embed-X включает первую среду разработки Agile для критически важных процессов программного обеспечения» , EE Times , получено 14 марта 2012 г.
- Сантос, Пабло (2 августа 2007 г.), «SCRUM встречает CMMi» , журнал доктора Добба , получено 14 марта 2012 г.