Изменения

Перейти к: навигация, поиск

Сравнение DVCS - несколько задач

309 байтов добавлено, 17:52, 20 ноября 2009
Подход «по ветке на патч»
Чего не хватает (а хочется):
* # легко создавать патчи, зависящие от нескольких других.* # легко поддерживать ветку, содержащую объединение всех патчей — для развёртывания.# удалять зависимости патчей.
Хотя и то, и другое, в принципе, сделать можно и так. Плюс же расширения заключается в [http://arrenbrecht.ch/mercurial/pbranch/index.htm хорошей online-документации] — у TopGit такой нет…
Забавно, кстати, что '''TopGit''' явно написан в общем духе git-а — смесь скриптов на bash, perl и программ на C. «Головной» скрипт '''<tt>tg</tt>''' (TopGit) написан на шелле, и команды <tt>tg --help, tg -h, tg help</tt> и т. п. сначала вводят в недоумение — «<tt>no git repository here</tt>». Нет, не подумайте, справку TopGit печатать умеет, но для этого сначала надо зайти в git-репозиторий :) типа ''Чего ты спрашиваешь? У тебя интерес реальный? Ты покупать будешь или нет?..''
'''TopGit''', как уже сказано, умеет побольше '''pbranch''', в частности, умеет 1-ую и 2-ую вышеупомянутые «хотелки» — команда <tt>tg create</tt> может создать новую ветку-патч на основе множества зависимостей, автоматически объединяя их и предлагая разрешать возникающие конфликты, а с помощью <tt>tg update</tt> можно обновлять изменения в зависимостях в ветки патчей, причём рекурсивно. На самом деле и то, и другое можно сделать и в '''pbranch''', и даже вообще без него, но придётся набрать чуть больше команд.
Команды расширения:
;summary: выводит список патчей со статусами и/или граф зависимостей через [[lib:Graphviz|Graphviz]]. В ASCII-виде этот граф, к сожалению, не рисуется.
;update: см.выше.
 
Чего не хватает (а хочется):
 
# удалять зависимости патчей.
 
То есть — реально удалять зависимости, а не просто отменять изменения.
== Схема управления рабочими копиями ==

Навигация