Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Plastic SCM - это кроссплатформенный коммерческий инструмент управления распределенными версиями , разработанный Códice Software Inc. Он доступен для Microsoft Windows , Mac OS X , Linux и других операционных систем. Он включает инструмент командной строки, собственный графический интерфейс, инструмент сравнения и слияния, а также интеграцию с рядом IDE . Это полный стек управления версиями, не основанный на Git (хотя он может взаимодействовать с ним).

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

Plastic SCM - это платформа стека управления полной версией. В его состав входят следующие компоненты:

  • Сервер
  • Клиент командной строки
  • Графические интерфейсы
  • Инструменты сравнения и объединения [1]
  • Веб-интерфейс [2]
  • Веб-интерфейс администратора [3]

Некоторые из его функций включают:

  • Поддержка интенсивного ветвления и слияния: по словам создателей, Plastic может обрабатывать неограниченное количество ветвлений и сложных сценариев слияния [4]
  • Visual Branch Explorer: временная шкала для представления ветвей, слияний и изменений в репозиториях, реализованная во всех его графических интерфейсах [5]
  • Безопасность на основе ACL: каждый объект в системе может быть защищен списками контроля доступа [6]
  • Встроенное трехстороннее слияние и параллельное сравнение, включая языковую поддержку и историю конкретного метода или функции [7]
  • Управление версиями каталогов и поддержка переименования версий
  • История изменений для разветвленных, переименованных, перемещенных, скопированных и удаленных файлов
  • Авторство / аннотировать
  • Централизованное управление (стиль SVN / Perforce)
  • Распределенная операция (стиль Git / Mercurial)
  • Атомарные коммиты - сервер гарантирует, что ревизии полностью зафиксированы в репозитории.
  • Стеллажи - пользователи могут сохранять и восстанавливать незавершенную работу для переключения задач.
  • Поддержка файлов ASCII, Unicode , двоичных файлов , символьных ссылок (в Unix), файлов для Mac и файлов UTF-16.
  • Поддержка платформ Mac OS X, Windows и Linux
  • Триггеры событий на стороне сервера и на стороне клиента [8]
  • Поддержка сети с высокой задержкой: сетевой протокол, используемый Plastic, оптимизирован для высокоскоростных сетей с высокой задержкой [9]
  • Gluon: графический интерфейс и рабочий процесс для не разработчиков (специально для разработки игр) [10]
  • Блокировка: двоичные файлы и активы, которые не могут быть объединены, могут использовать блокировку вместо ветвления / слияния [11]

Дизайн [ править ]

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

Хранилище [ править ]

Plastic SCM имеет 2 разных семейства хранилищ для всех своих данных и метаданных:

  • Jet: специальное хранилище, разработанное для обеспечения высокой производительности, выпущенное с версией 6.0. Теперь это хранилище по умолчанию.
  • Реляционные базы данных: Традиционно Plastic поддерживает хранение всех данных и метаданных в реляционных базах данных: MySQL, SQL Server, SQLite, SQL Server Compact Edition, Firebird, Firebird Embedded, Postgresql и Oracle. Реляционные базы данных по-прежнему поддерживаются, хотя Jet теперь используется по умолчанию. [12]

Режимы работы [ править ]

Пластик может работать в 2-х режимах:

  • Централизованный: с рабочими областями (рабочими копиями), подключенными непосредственно к серверу. Пользователи выполняют операции регистрации без необходимости дополнительного нажатия.
  • Распределенный: пользователи размещают свои собственные репозитории на своих компьютерах и отправляют / отправляют на центральный сервер. [13]

Отличия от Git [ править ]

Plastic SCM не основан на Git, хотя может действовать как Git-сервер и Git-клиент. Различия можно резюмировать следующим образом: улучшения в слиянии, встроенная поддержка больших файлов и проектов, дополнительная блокировка файлов, возможность распределенной и централизованной работы. Различия есть и в структуре ветвления: в Git ветки - это просто указатели, а в Plastic - это контейнеры. Каталоги пластиковых версий и файлы, идентифицирующие их с помощью «идентификаторов элементов», что хорошо для отслеживания перемещения / переименования, в то время как Git полагается на различия для восстановления переименований / перемещений и не поддерживает каталоги версий. [14]

Взаимодействие с другими системами контроля версий [ править ]

Git [ править ]

Plastic может взаимодействовать с Git следующими способами:

  • GitSync: каждый клиент Plastic может загружать и извлекать данные из репозитория Git. [15]
  • GitServer: сервер Plastic может действовать как сервер Git, поэтому любой клиент git может отправлять / извлекать на сервер Plastic.
  • Поддержка быстрого импорта / экспорта: доступны команды быстрого экспорта и быстрого импорта для экспорта пластиковых репозиториев в промежуточный формат Git и импорта из промежуточного формата Git. [16]

Perforce [ править ]

Пластик может выполнять двунаправленную синхронизацию с хранилищами Perforce для облегчения миграции [17]

Другие элементы управления версиями [ править ]

Импорт / экспорт из других систем достигается с помощью формата быстрого импорта / экспорта Git.

Доступность, цикл выпуска и поддерживаемые платформы [ править ]

Пластиковый SCM доступен для загрузки с веб-сайта plasticscm.com. Основные выпуски публикуются ежегодно в виде готовых исполняемых файлов для Microsoft Windows , Mac OS X и Linux . [18]

Незначительные выпуски доступны еженедельно.

Лицензирование и условия использования [ править ]

Plastic SCM бесплатен для частных лиц (Personal Edition), некоммерческих организаций и проектов с открытым исходным кодом (Community Edition).

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

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

Enterprise Edition - это коммерческая версия для групп более 15 пользователей, обычно используемая корпорациями. Его можно приобрести в режиме бессрочного выпуска или с ежемесячной или годовой подпиской. [19]

История [ править ]

Codice Software была запущена в августе 2005 года при поддержке бизнес-ангела и учредителей. [20] Цель заключалась в том, чтобы создать более эффективный контроль версий, чем SVN, в плане ветвления и слияния и более доступный для малого и среднего бизнеса, чем коммерческие альтернативы, доступные в то время. В октябре 2006 года они выпустили первую версию Plastic SCM и официально представили ее на конференции Tech Ed 2006 в Барселоне. [21] [22]

В 2007 году Codice была первым испанским малым и средним бизнесом, достигшим уровня CMMI L2 с использованием SCRUM. [23]

Пластиковый SCM был отмечен Novell как одна из компаний, использующих Mono в коммерческих целях. [24]

Пластиковый СКМ 2.0 был запущен в марте 2008 года. [25]

В 2009 году Codice обеспечивает свой первый раунд венчурного капитала при поддержке Bullnet Capital, испанской фирмы, специализирующейся на технологических компаниях. [26]

Компания Plastic SCM стала финалистом премии Jolt Award в категории «Управление изменениями и конфигурациями», объявленной в декабре 2008 года. [27]

Plastic SCM 3.0 был запущен в июле 2010 года [28] и включает Xdiff / Xmerge: их первый подход к отслеживанию перемещенного кода в различиях и слияниях.

В декабре 2010 года Plastic SCM объявляет о «истории метода», функции, которая позволяет пользователю вычислять историю данного метода / функции вместо истории всего файла. [29]

В 2011 году Франсиско Монтеверде присоединился к компании в качестве генерального директора, а Пабло Сантос, основатель, был назначен техническим директором и президентом совета директоров. [30]

Plastic SCM 4.0 был запущен 23 ноября 2011 года [31] [32] и представил серьезное изменение во внутреннем дизайне: управление версиями и отслеживание слияния было перенесено с подхода для каждого файла на подход для каждого набора изменений, что помогло улучшить более поздний Git. -interop. [33]

Начиная с 4.0, Plastic стал больше ориентироваться на разработку игр, особенно учитывая слабые стороны Git с точки зрения больших репозиториев и файлов. [34]

Версия 4.1 была запущена в апреле 2012 года. [35]

В 2013 году Codice запускает SemanticMerge, инструмент, который позволяет различать и объединять на основе структуры кода, а не текста. [36] Позже эта технология была интегрирована в Plastic. Семантика основана на предыдущей работе, выполненной с помощью инструмента Xdiff / Xmerge. Позже в том же году Semantic добавила поддержку Java в дополнение к первоначальному предложению .NET. [37] Пабло Сантос представил обнаружение межфайловых различий и слияний на QCon 2013 в Сан-Франциско. [38]

В 2013 году Plastic SCM начал изначально поддерживать сетевой протокол Git, который фактически преобразует любую установку Plastic в клиент Git. [39]

Plastic SCM 5.0 запущен в сентябре 2013 года. [40] Он имеет встроенный семантический дифференциал, обнаружение рефакторинга [41] и историю методов. [42] К другим функциям относятся безопасность на основе путей, списки изменений клиентов и улучшенные скрытые правила.

Версия 5.4 позже расширяет некоторые из этих функций и добавляет еще несколько: зашифрованные серверы, JavaCLI (клиент Java для поддержки сценариев HP-UX и Solaris), многоядерная загрузка и загрузка файлов, Plastic Gluon (разработанный в сотрудничестве с Telltale [43 ] ), графический интерфейс для художников, занимающихся разработкой игр, оптимизированная для WAN передача данных, субмодули, трансформируемые рабочие пространства. Plastic 5.4 развивается как основная версия Plastic, и в декабре 2014 года запускается новый собственный графический интерфейс для Linux, заменяющий предыдущий кроссплатформенный. [44] 5.4 также включает новый собственный графический интерфейс MacOS.

В январе 2016 года Plastic Cloud был запущен как система облачного репо-хостинга. [45]

В марте 2016 года была запущена Plastic Cloud Edition - новая версия, предназначенная для команд, которым не нужен локальный сервер. [46]

Версия 6.0 была наконец выпущена в январе 2017 года. [47] Она включает новую систему хранения данных под названием Jet, полную обратную совместимость до 5.0 и поддержку плавающих лицензий. 6.0 продолжает развиваться в течение 2017 года.

Plastic SCM 7.0 был запущен в марте 2018 года [48], включая новый дизайн Branch Explorer, новый веб-интерфейс администрирования и улучшения в графических пользовательских интерфейсах MacOS и Linux.

Функция mergebots была запущена в сентябре 2018 года. Mergebots - это способ реализации DevOps с агентами на стороне сервера, которые обнаруживают, когда ветви должны быть объединены после их тестирования в системе CI. [49] Plastic SCM 8.0 был выпущен в январе 2019 года.

17 августа стало известно, что Unity Technologies , создатель игрового движка Unity , приобрела Codice Software. [50] [51]

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

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

Заметки [ править ]

  1. ^ XDIFF И XMERGE
  2. ^ WebUI: переработанный веб-интерфейс для Plastic
  3. ^ webadmin - знакомство с новым инструментом администрирования сервера
  4. ^ mergeMachine
  5. ^ Проводник веток
  6. ^ БЕЗОПАСНОСТЬ
  7. ^ Семантический контроль версий
  8. ^ РУКОВОДСТВО ПО ТРИГГЕРАМ
  9. ^ Оптимизированный сетевой канал для высокой задержки
  10. ^ Gluon: Контроль версий для художников
  11. ^ РУКОВОДСТВО АДМИНИСТРАТОРА PLASTIC SCM: Глава 7: Настройка эксклюзивной проверки (блокировка)
  12. ^ История Jet: сверхбыстрое хранилище репо Plastic
  13. ^ Пластиковый SCM - DVCS на уровне предприятия
  14. ^ Пластиковый SCM против Git - выпуск 2018 г.
  15. ^ GitSync для Plastic SCM с собственными протоколами Git и поддержкой Visual Studio 2012
  16. ^ ОСОБЕННОСТИ PLASTIC SCM ДЛЯ ПОЛЬЗОВАТЕЛЕЙ GIT
  17. ^ [ссылка: https://www.plasticscm.com/perforce Plastic SCM для команд Perforce]
  18. ^ Мигель де Икаса о пластиковом интерфейсе SCM в Linux и Mac OS X
  19. ^ Основные обновления PlasticSCM
  20. ^ LinkedIn: Пабло Сантос
  21. ^ SIMO 2006
  22. ^ Пластиковый SCM - DVCS на уровне предприятия Пластиковый SCM - DVCS на уровне предприятия
  23. ^ Codice Software демонстрирует новый инструмент SCM
  24. ^ Компании, использующие Mono
  25. ^ Пластиковый комплект SCM 2.0 для параллельных разработок
  26. ^ Innova.- La entidad de capital riesgo Bullnet Capital Entra en el accionariado de la vallisoletana Códice Software
  27. ^ Продукция Embarcadero - финалисты премии Jolt Award в нескольких категориях.
  28. ^ Codice включает XMerge / XDiff 2.0 в выпуск Plastic SCM
  29. ^ Объявление истории метода
  30. ^ Francisco Monteverde SE convierte En El Nuevo генеральный директор де CODICE Software
  31. ^ Запуск Plastic SCM 4.0: новые функции в Plastic SCM 4.0 от Пабло Сантоса
  32. ^ Codice Software запускает Plastic SCM 4.0; Проблемы Git и Perforce в DVCS
  33. ^ Пластиковые внутренние детали: de 3.0 a 4.0
  34. ^ Codice Software представляет Plastic SCM 4.0 для разработки игр, успешного сотрудничества с Digital Legends Entertainment
  35. ^ Plastic SCM уделяет внимание деталям в управлении исходным кодом
  36. ^ Инструмент слияния, который понимает функции
  37. ^ Codice Добавить поддержку Java в свой инструмент слияния с учетом кода
  38. ^ InfoQ - QCon San Francisco 2013 - Рефакторинг в эпоху DVCS - Введите семантическое слияние
  39. ^ GitSync для Plastic SCM с собственными протоколами Git и поддержкой Visual Studio 2012
  40. ^ Две новые версии Plastic SCM вышли сегодня
  41. ^ Семантический контроль версий
  42. ^ Особенности пластика SCM
  43. ^ Как Telltale Games обрабатывает контроль версий
  44. ^ Родной графический интерфейс Linux - gtkplastic
  45. ^ Plastic Cloud уже нет!
  46. ^ Пластиковый SCM Cloud Edition
  47. ^ Выпуск 6.0.16.804
  48. ^ Выпуск 7.0.16.2047
  49. ^ Добавьте mergebot в свое репо!
  50. ^ «Unity приобретает Codice Software для управления рабочими процессами 3D» . VentureBeat . 2020-08-17 . Проверено 17 августа 2020 .
  51. ^ Barton, Сет (2020-08-17). «Unity приобретает разработчика Codice Software | Новости разработки» . MCV / РАЗРАБОТКА . Проверено 17 августа 2020 .

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

  • Крилл, Пол (2008-03-24), "Plastic SCM 2.0 set for parallel development projects" , InfoWorld , получено 14 марта 2012 г.
  • Фейнман, Джефф (1 декабря 2009 г.), «Codice расширяется с новой версией инструмента SCM» , SD Times , получено 14 марта 2012 г.
  • Норфолк, Дэвид (30 июля 2007 г.), «Codice Software демонстрирует новый инструмент SCM» , The Register , получено 14 марта 2012 г.
  • Serignese, Кэти (2010-07-15), "Codice включает XMerge / XDiff 2,0 в пластмассе выпуске SCM" , SD Times , извлекаться 2012-03-14
  • МакКоннел, Тони (27 апреля 2010 г.), «ESC - Embed-X включает первую среду разработки Agile для критически важных программных процессов» , EE Times , получено 14 марта 2012 г.
  • Сантос, Пабло (2007-08-02), "SCRUM Соответствует требованиям CMMI" , журнал доктора Добба , извлекаются 2012-03-14