Date: 2015-04-30 04:57 pm (UTC)
From: [identity profile] irene221b.livejournal.com
Блядь, я работала в таком месте. Ну ОК, там продвинулись уже до понимания бранчей и мерджей. Но каждый хотел анально отгородиться навсегда на своем бранче, на несколько месяцев. Потому что если continuous integration, то ОНИ будут все время портить мой красивый код ИХ тупыми изменениями. Но я их постепенно заставила родину любить осознать, что защищать свой красивый код от чужих уродств надо тестами, а не бранчами.

Date: 2015-04-30 09:15 pm (UTC)
From: [identity profile] no more turtles (from livejournal.com)
от уродств к сожалению никакие тесты не помогают. скорее усугубляют, поскольку уродовать будуть до тех пор, пока тесты не пройдут. так что только reviews.
From: [identity profile] irene221b.livejournal.com
Ревьюз - это они умели, да. Вот так через три месяца вываливали на тебя все написаное - проверяй, родной, ни в чем себе не отказывай. А что там от ближайшего общего предка и бранч, и latest уже так далеко уехали, что ни один дифф не справляется - ну такая судьба наша горькая.

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

Но я как вспомню эти споры с начальством (что? мы и так умираем на каждом мердже, ты хочешь мерджить ЧАЩЕ?!!), так до сих пор плакать хочется.
From: [identity profile] no more turtles (from livejournal.com)
> А что там от ближайшего общего предка и бранч, и latest уже так далеко уехали, что ни один дифф не справляется - ну такая судьба наша горькая.

хе-хе.. ну так отправить делать бранч апгрейд самостоятельно to the latest trunk.. И еще три месяца покоя есть ;)

А вообще feature branches это как атомное оружие. Дикарям в руки лучше не давать. Ну или только под полным контролем.
dennisgorelik: 2020-06-13 in my home office (Default)
From: [personal profile] dennisgorelik
> мы и так умираем на каждом мердже, ты хочешь мерджить ЧАЩЕ?!!

Как вам удалось переубедить начальство?
From: [identity profile] irene221b.livejournal.com
К сожалению так складывалась карьера, что дошла до черного пояса в виде боевых искусств influencing without authority.

Начальство переубеждается картинками - вот так будет выглядеть новый процесс, вот здесь сэкономим время на двухдневной "интеграции", вот здесь - можно будет отказаться от stabilization phase, aka "а теперь со всей этой хуйней мы попробуем взлететь".

Еще полезно с фактами в руках рассказывать про industry best practices, к примеру, про version strategies есть отличная книжка с картинками: http://www.bradapp.com/acme/branching/

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

Кроме картинок и медицинских энциклопедий, начальство любит страшные истории. Например, про неуловимый semantic conflict.

Это все относится к относительно вменяемому и не злокозненному начальству, совсем уж злокачественные случаи переубедить нельзя.
dennisgorelik: 2020-06-13 in my home office (Default)
From: [personal profile] dennisgorelik
> stabilization phase

Я уже забыл про это чудо.
Но ведь было, было такое в моей карьере.

> неуловимый semantic conflict

Что большое изменение может быть и смёржится, но в нём могут появиться баги, которых не было ни в одной ветке до мёржа?

Кстати, это всё про SVN и ему подобные.
Вы не пробовали Git (или другой DVCS)?
From: [identity profile] irene221b.livejournal.com
>Что большое изменение может быть и смёржится, но в нём могут появиться баги, которых не было ни в одной ветке до мёржа?

Да, потому что конфликты на уровне, который дифф не отловит. Ну вот адский пример, но не могу сходу лучше придумать: на одном бранче в функцию добавили side effect, и даже правильно это обработали в единственном вызове этой несчастной функции. А в это время в другом бранче добавили три новых вызова. Из другого файла. И все смержится чистенько.

Я к svn и Perforce хорошо отношусь. Git пробовала, у него те же концептуальные проблемы, если использовать feature branch. Только он почему-то дает людям иллюзию, что проблем меньше. Допускаю, что я просто не была в ситуации, где его преимущество в смысле D для чего-то важно. А когда оно не важно, то это просто добавляет сложности.
dennisgorelik: 2020-06-13 in my home office (Default)
From: [personal profile] dennisgorelik
> другом бранче добавили три новых вызова.

Спасибо, это хорошая иллюстрация semantic conflict.
У меня это всё воспринималось на невербальном уровне - что если merge большой, то проблемы при merge - ещё больше.
Собственно, это не только merge касается, но и простых commits.

Date: 2015-04-30 09:09 pm (UTC)
From: [identity profile] no more turtles (from livejournal.com)
trigger scripts? wtf, есть же svn:needs-lock

Date: 2015-04-30 11:29 pm (UTC)
From: [identity profile] migmit.livejournal.com
Мдя. При мне в Dr.Web произошёл переход с CVS на TFS. Оказывается, это ещё не предел.

Date: 2015-05-01 07:25 am (UTC)
From: [identity profile] ext_1684112 (from livejournal.com)
Чем это вам TFS не по нраву?

Profile

juan_gandhi: (Default)
Juan-Carlos Gandhi

June 2025

S M T W T F S
1 2345 6 7
8 9 10 11 121314
15161718 1920 21
222324252627 28
2930     

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 29th, 2025 05:49 am
Powered by Dreamwidth Studios