Warning! You are viewing the old version of site.

New version of the site - https://www.teamlead.ru/!


By Rich Manalang, Developer Relations, Atlassian

Несколько недель назад я занимался реструктуризацией кода, написанного моим коллегой из Боулдера (сам я нахожусь в Сан-Франциско).

Я вообще-то довольно нетерпеливый, поэтому мне хотелось, чтобы коллега сразу посмотрел на те изменения, что я вношу. Сразу - то есть без всяких лишних церемоний и официальных бизнес-процессов, которые принято называть "ревью кода" и т.п. Я понял, что мне бы хотелось, чтобы коллега просто видел мой экран с кодом, видел, какие я вношу изменения в реальном времени. Я мог бы сделать следующее:

  1. Предложить ему сеанс демонстрации моего рабочего стола.
  2. Скопировать код на какой-нибудь хост-сайт и обсудить его через HipChat (сервис группового чата).
  3. Закоммитить измененный код в репозиторий Stash и послать коллеге запрос на подтверждение.

Один из этих вариантов  вполне устроил бы большинство разработчиков, но не меня. Мы с Бобом и так детально обсуждаем изменения кода через HipChat, добавление возможности писать код совместно – вот это было бы идеально.

Воплощение в жизнь

Ситуация, описанная выше, случается со мной не в первый раз. Вообще-то она случается постоянно, и я уверен, не только со мной. Я давно мечтал о редакторе, который позволял бы совместное написание кода в реальном времени. Многие пытались создать нечто подобное, но, на мой взгляд, все было не то.

Так что несколько недель назад, когда мы с коллегой  Тимом Петерсеном обсуждали, чем бы в этот раз заняться в рамках квартального ShipIt, я предложил решить именно эту проблему. Всего один день совместной работы, и мы предложили решение.

 

Stash Realtime Editor позволяет в реальном времени редактировать файлы напрямую из интерфейсов Stash, никаких копирований-клонирований, никаких IDE, никаких локальных редакторов. Вы можете  поделиться ссылкой с коллегой и редактировать или проверять код вместе. После того, как нужные изменения сделаны, вы можете сразу закоммитить их в Stash  без необходимости выполнять push в репозиторий. Ваш коммит будет сохранен отдельной веткой (branch) и впоследствии можно будет провести слияние простым pull-запросом.

Stash Realtime Editor  встраивает real-time редактор напрямую в Stash, используя легендарный сервис  Firebase и их крутой редактор Firepad, построенный на базе  operaional transform (OT - теоретическая основа для управления конкуренцией в контексте группового редактирования).

OT делает real-time редактирование файлов надежным и предсказуемым и позволяет пользователю видеть, чем заняты другие пользователи (например, выделение, подчеркивание, правка и так далее).  

Stash Realtime Editor продолжает работать даже при отсутствии сети. Предположим, вы работали с кем-нибудь над файлом, потом отключили ноутбук и продолжили вашу работу по пути домой.  Дома, после подключения к сети, вы можете синхронизировать все сделанные в дороге изменения, и они будут синхронизированы именно так, как вы ожидали.

Stash Realtime Editor – бесплатная надстройка для Stash. Ищите на Atlassian Marketplace…


Узнать больше

Оригинал статьи на сайте Atlassian: http://blogs.atlassian.com/2013/04/meet-the-stash-realtime-editor-add-on/