Git-Flowに従うには、ユーザーがリリースまたはホットフィックスを使用してマスターブランチにコミットすることを意図して、マスターブランチへの直接コミットを禁止する必要があります。
仰るとおりです。
マスターでのコミットを禁止するには、hooksディレクトリのフックファイル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スクリプトを.git/hooks
ディレクトリのpre-commit
ファイルに作成(または作成するオプションを提供)することは可能でしょうか?
@samkellett git flow init
でのこれの目的は何でしょうか? このコマンドは何もコミットせず、本番ブランチと開発ブランチが存在しない場合はそれらを作成し、必要な情報を.git/config
ファイルに追加するだけです。
私はそれが環境をセットアップすることを理解しました、そしてその一部はあなたがもはやマスターにコミットするべきではないということです、あなたがgitflowセットアップを作成するときにフックをインストールすることはその新しい区別を強制します
@samkellettやったね。
良いアイデア。 たぶん、gitのcompletion
のように、 contrib
ディレクトリで分離します。
ええ、それはうまくいくでしょう!
ただ注意してください、それはこのリポジトリに追加されません。 このリポジトリは2年間更新されていません。
ははは、そうそう..!
@petervanderdoes 、スクリプトをありがとう。 しかし、どうすればユーザーごとのブランチプッシュ制限を追加できますか?
coco.osのインターフェースを使用しています
2016年11月2日11:21、 FahadAhammednotifications @github.comは次のように書いています。
@petervanderdoes 、スクリプトをありがとう。 しかし、どうすればユーザーごとのブランチプッシュ制限を追加できますか?
—
このスレッドにサブスクライブしているため、これを受け取っています。
このメールに直接返信するか、GitHubで表示するか、スレッドをミュートしてください。
ssh rsaキーをご希望ですか?
2016年11月2日11:21、 FahadAhammednotifications @github.comは次のように書いています。
@petervanderdoes 、スクリプトをありがとう。 しかし、どうすればユーザーごとのブランチプッシュ制限を追加できますか?
—
このスレッドにサブスクライブしているため、これを受け取っています。
このメールに直接返信するか、GitHubで表示するか、スレッドをミュートしてください。
最も参考になるコメント
マスターでのコミットを禁止するには、hooksディレクトリのフックファイル
pre-commit
を編集します。最初に実行する次のコードを追加します。