2013-08-26

Ещё о системе контроля версий от JetBrains

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

И вот опять они. Набрёл (как водится, на Хабре) на подкаст Разбор полётов, где CTO JetBrains рассказывает в числе прочего и про новую VCS. Рассказ начинается примеро с 0:30.

Итак, что нового по сравнению с предыдущим инсайдом.

Ключевой момент, на мой взгляд, это управление правами доступа. Про него было сказано вскользь, однако это принципиальный момент. Когда я рассказывал про впечатления от Перфорс я упоминал об этом. До сих пор считаю, что в P4 права доступа сделаны отлично. Посмотрим, что сделают здесь, для централизованной ситемы контроля версий это чрезвычайно важно.

Более подробно рассказали про синхронизацию рабочих копий. Вкратце работа будет идти по следующему принципу:

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

То есть с одной стороны система централизованная, а с другой - есть возможность офлайновой работы.

Ещё интересный момент - локально у пользователя будет подниматься локальный сервер контроля версий, который будет общаться и синкаться с другим таким же, но централизованным сервером. Дефолтный интерфейс для работы с серверами - через веб. Будет и интеграция с IDE через API, конечно же, да и ком. строка в наличии, однако самая полная функциональность будет доступна через браузер.

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

Было ещё раз сказано о том, что система - open source. Прозвучала здравая мысль о том, что в наше время писать с нуля закрытую VCS - это мягко говоря неправильно. Оно и понятно - если есть открытый git, кому нужен закрытый конкурент?

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

P.S. На Google+ возникло обсуждение.

Комментариев нет:

Отправить комментарий