Brainimusによるこの回答は、コード レビューとディスカッションの部分を容易にする GitHub プル リクエストの側面を使用して、機能ブランチの共同の側面を示しています。
- 機能ブランチを作成します。
git flow feature start module_1
- コードは機能ブランチで更新されます
- 変更がコミットされると、GitHub にプッシュされます (または、必要に応じて最後に 1 回)。
develop
機能が完了すると、プル リクエストが GitHub で開かれ、機能ブランチが比較されます。module_1
- チームはプル リクエストをレビューし、コメントを作成します
- プル リクエストからの変更は機能ブランチに対して行われます。
- すべての変更がフィーチャー ブランチに組み込まれると、フィーチャー ブランチは終了します。
git flow feature finish module_1
develop
ブランチが GitHub にプッシュされます (これが発生すると、GitHub はプル リクエストをクローズ/マージ済みとして自動的にマークします) 。
ただし、そのブランチを閉じるという問題が残ります。
これまでに実行した人git flow feature finish module_1
は、ローカル機能ブランチが削除されるという贅沢を享受できますが、ブランチをチェックアウトした他の人は、必要に応じて手動でこれを行う必要があります
git fetch --prune
特にGit 1.8.5以降、configでその「プルーニング」ステップを設定できます。サーバー側で削除された場合、単純なgit fetchで機能ブランチが削除されgit flow feature finish
ます(他の誰かが.
gitflow 機能は、AVH エディションが単にブランチをチェックアウトして追跡するかどうかを追跡します。つまり、ローカル ブランチがローカル トラッキング ブランチになり、上流ブランチ(リモート トラッキング ブランチ) が関連付けられていることを確認します。
つまり、 と を設定しbranch.<name>.remote
ますbranch.<name>.merge
。
(新しいローカル機能ブランチに対して) を実行するgit flow feature pull
が、実際git flow feature track
には を意味する場合、既存のブランチを上流のブランチに追跡させるだけで済みます。
git branch -u origin/feature
一般的:
- で始まる
git flow feature track
、_
- 次に、ローカル機能ブランチを最新の状態に保ちます
git flow feature pull
- で機能ブランチを切り替えます
git flow feature checkout
「 Getting Started – Git-Flow 」で言及されているように:
git flow feature pull
これは、複数の人が 1 つの機能について一緒に作業する場合に行われます。
次のように、リモート機能ブランチでプルを実行する場合は、このコマンドを使用する必要があります。
git flow feature pull [alias] [featureName]
このコマンドを使用すると、チーム メイトによってプッシュされたソース コードが取得され、その変更がローカル ブランチに自動的にマージされます。
競合が発生した場合、これらの競合の解決を行うのは不運または幸運になります。