しかし、自分のブランチをリモート ブランチにプッシュするときに、ベース ブランチが指定したリモート ブランチに設定される方法はありますか?
つまり、次のことを避けます。
x--x--x (branch1) x--x--x
==> push ==> \
y--y--y (origin/remote-name) y--y--y--M
しかし、むしろ得ます:
y--y--y--x--x--x
これは、プッシュする前に、branch1が の上にリベースされているorigin/remote_name場合にのみ可能です:
git fetch origin
git checkout branch1
git rebase origin/remote_name
git push branch1:remote_name
私たちのシナリオは、マスター ブランチのようなものです。ライブ アプリとしましょう。欠陥を見つけるたびに、修正ブランチ (開発ブランチから分岐する必要があります) を作成し、修正を作成して、最初に修正ブランチを開発ブランチにプッシュします。テストと QA が行われる場所です。ファイナライズしたら、マスターにプッシュバックします。
あなたの場合、リベースして別のブランチにプッシュする必要があります。これは、 別の開発努力、継続的な修正の 1 つを表しているdevためです。dev
(prod)の上に 1 つずつ統合するホット フィックスを表すリリース ブランチを作成します。master
バグが表示されるたびに:
- そのためのブランチを作成し
bug、
- バグを修正する
- の上にバグブランチをリベースします
release_branch
bugQA がレビューするためにブランチをプッシュする
- 確認したら、プッシュします
master