Перешли с svn на git. Следующая версия продукта 8cd63a выйдет позавчеравтра.
piikummitus,
Ivan Bessarabov,
STENDEC,
woof,
последние пни,
[email protected],
9000,
Starepolsky smok,
словарный запас кофемолки,
Иван,
pgms,
marinka239,
псы в рапиде,
употребляли аккуратно,
шаша,
I'm on my way,
nm,
and
Коломеец
liked this
Atlassian Stash весьма неплох. Миграция с svn нетривиальна, по здесь помог Subgit и их плагин для стэша.
- Igor Sereda
Для енфорсмента процесса написал плагин для стэша, который блокирует пуши в мастер и девелоп (чтобы все шло через pull requests). Заняло двадцать-тридцать минут. Сравнимо с писательством хуков для svn сервера.
- Igor Sereda
Хмм, блокировать пуши, по-моему, можно как-то ещё проще. У нас (git, gerrit, jenkins, jira) workflow был скопирован из андроидного; отлично шло.
- 9000
@9k и jenkins не дурил? У нас он с потрясающим упорством теряет историю билдов.
- I'm on my way
git клёвый по первой потери при мёрдж-конфликте :)
- Ildar Karimov
интересно какая именно тулза и как именно лучше обрабатывает мердж-конфликты, чем гит? мне казалось, что они все принципиально эквивалентны в этой области, нет?
- псы в рапиде
мне по секрету рассказывали про p4 :)
- Igor Sereda
так что именно делает p4?
- псы в рапиде
мое мнение — для любой тулзы можно найти такую конфигурацию изменений, при которой ее алгоритм сломается или выдаст контринтуитивный результат (потому что исходная конфигурация — контринтуитивна).
- псы в рапиде
пытаюсь найти какое-нибудь внятное сравнение функциональности мерджей у разных scm'ок. пока только git praise, блин ) http://stackoverflow.com/questio...
- псы в рапиде
Не, отлично работает (на моём старом проекте), руками приходилось только некоторые build dependencies докидывать в локальный blessed репозиторий пакетов, остальное всё сам.
- 9000
@squadette ^^^ В принципе согласен (нет серебряной пули), вопрос в вероятности наступить на грабли в каждом конкретном случае. В svn у нас проблемы были, *именно этих* проблем с гитом быть вроде не должно, но что есть другие грабли, это наверняка. Large binary files, но вроде у нас их нет... пока. Directories not first-class citizens. Too easy to shoot one's foot. С интересом жду как пойдет.
- Igor Sereda
В svn с его линейной историей практически нереально потерять что-то при мёрдже, с гитом же при -s ours ищи-свищи потом
- Ildar Karimov
@9000 пуши можно наверное также блокировать хуками в самом репозитории, но плагин для стэша лучше - его можно потом в настройках включать-выключать для каждого репозитория одним кликом
- Igor Sereda
@thevery ну вот например - "How to use git to lose data" - http://www.cs.cmu.edu/~davide...
- Igor Sereda
что такое "потерять" в git'е? ) git reset --hard HEAD^ после сколь угодно неудачного мерджа — и все на месте.
- псы в рапиде
смешное название про "how to use git to lose data", но не о том. но кстати заставляет задуматься, true. но не о том.
- псы в рапиде
Что вы ни говорите, а с мёржами я намучился в svn, хмурился, используя p4, и 1 (один) раз нарвался на то, что git при мёрже не втянул одно изменение из моей ветки, по в принципе понятной причине сочтя, что master свежее. Ну, обнаружил, руками вписал, --amend решает. С svn и p4 мне руками приходилось вписывать куда больше. В гугле, скажу по секрету, p4 живёт в некотором роде как backend, а git как локальный frontend к нему. Довольно неплохо.
- 9000
ух ты.
- псы в рапиде
^ идея в том, что глобальный p4 checkout сверху снабжён локальным git-ом, в котором можно резвиться, временами говорить export (git → p4), временами sync (p4 → git). соотв. merge в центральный репозиторий делает p4.
- 9000
@squadette потерять=не заметить после мёрджа - при -s ours дифф будет как бы пустой.
- Ildar Karimov
вот это кстати реальная тема. семантика диффа на мердж-коммите для меня загадка :((
- псы в рапиде