Gitflow: Запретить прямые коммиты на master

Созданный на 12 июл. 2013  ·  17Комментарии  ·  Источник: nvie/gitflow

Чтобы следовать Git-Flow, мы должны запретить прямую фиксацию в основной ветке с намерением, чтобы пользователи использовали выпуски или исправления для фиксации в основной ветке.

Самый полезный комментарий

Чтобы запретить коммиты на мастере, отредактируйте файл ловушки pre-commit в каталоге ловушек.

Добавьте следующий код, который будет запускаться первым:

branch=`git symbolic-ref HEAD`
if [ "$branch" = "refs/heads/master" ]; then
    echo "Direct commits to the branch master are not allowed"
    exit 1
fi

Все 17 Комментарий

Я с тобой согласен.

Чтобы запретить коммиты на мастере, отредактируйте файл ловушки pre-commit в каталоге ловушек.

Добавьте следующий код, который будет запускаться первым:

branch=`git symbolic-ref HEAD`
if [ "$branch" = "refs/heads/master" ]; then
    echo "Direct commits to the branch master are not allowed"
    exit 1
fi

@petervanderdoes : эти строки включены в вашу вилку?

@HassanCehef Нет.

Вы не можете включать эти строки в git-flow, так как это хук, запускаемый командой git commit , а не командой git-flow. Для получения дополнительной информации о git-хуках я предложил прочитать: http://git-scm.com/book/en/Customizing-Git-Git-Hooks

@petervanderdoes большое спасибо, это сработало как шарм :)

Можно ли расширить git-flow-init, чтобы добавить этот хук?

@samkellett Нет.

Как упоминалось ранее: вы не можете включать эти строки в git-flow, поскольку это хук, запускаемый git commit, а не командой git-flow.

Извините, я пропустил ваш ответ! Когда вы делаете git flow init , может ли поток git создать (или дать возможность создать) этот сценарий bash для файла pre-commit в каталоге .git/hooks ?

@samkellett Какова цель этого в git flow init ? Команда ничего не фиксирует, она просто создает ветку производства и разработки, если они не существуют, и добавляет необходимую информацию в файл .git/config .

Я просто подумал, что он настраивает среду, и часть этого заключается в том, что вы больше не должны фиксировать мастер, установка хука при создании настройки потока git обеспечивает это новое различие.

@samkellett Я понял.

Хорошая идея. Может быть, отдельно в каталоге contrib , например completion в git.

Да, это может сработать!

Просто предупреждаю, что в этом репозитории он не будет добавлен. Репозиторий не обновлялся 2 года.

хаха, о да..!

@petervanderdoes , спасибо за сценарий. Но как я могу добавить пользовательское ограничение на нажатие ветки?

Я использую интерфейс coco.os

2 ноября 2016 г., в 11:21, Фахад Ахмед [email protected] написал:

@petervanderdoes , спасибо за сценарий. Но как я могу добавить пользовательское ограничение на нажатие ветки?


Вы получаете это, потому что подписаны на эту тему.
Ответьте на это письмо напрямую, просмотрите его на GitHub или отключите ветку.

Хотите ключ ssh rsa?

2 ноября 2016 г., в 11:21, Фахад Ахмед [email protected] написал:

@petervanderdoes , спасибо за сценарий. Но как я могу добавить пользовательское ограничение на нажатие ветки?


Вы получаете это, потому что подписаны на эту тему.
Ответьте на это письмо напрямую, просмотрите его на GitHub или отключите ветку.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги