Я начинаю играть с ловушками git, и я хотел бы создать такую, чтобы разработчик не мог создавать новую ветку в конкретной ветке. Текущий процесс в нашей компании должен выглядеть следующим образом:
git checkout master
git fetch
git reset --hard origin/master
git checkout -b [branch name]
do awesome things.
Однако иногда при быстром движении некоторые разработчики в конечном итоге запускают эту новую ветку из промежуточного репо. Что вызывает горе.
Итак, я хотел бы создать ловушку для прерывания, когда разработчик начинает создавать новую ветку, проверить, в какой ветке они находятся, и либо exit 1
, если ветвь не master
(или просто вообще остановите действие, если имя ветки staging
), или разрешите его в противном случае.
Edit:
По мере того, как я продолжаю искать, я понимаю, что хочу ловушку предварительной проверки, которая, кажется, не существует. Если у кого-то нет более хорошей идеи, я перейду к выводу очень большого предупреждения в ловушку после проверки, если приведенный выше сценарий сбудется.