私はこれまで SVN、GIT、Mercurial を使用してきましたが、後者の 2 つのワークフローは常にプル / マージ / プッシュのみで構成されていました。現在、ワークフローに親ブランチからのリベースが頻繁に含まれるプロジェクトに取り組んでおり、何が起こっているのか、またはワークフローが正しいものであるかどうかを完全に理解しているかどうかはわかりません。私は指定されたブランチですべての作業を行っているので、次のようになります。
git checkout dvl_bkend      // This is 'parent' branch
git checkout -b dvl_bogdan  // Created my own branch 
以下はすべて自分のブランチからのものです。コーディング セッションを開始すると、次のようになります。
git pull --rebase -s recursive -X ours origin dvl_bkend
安定したものができたらすぐに、コーディングなどを行います
git add stuff
git commit stuff
// rinse and repeat above two steps
プッシュする準備ができたとき。
git pull --rebase -s recursive -X ours origin dvl_bkend
この時点で、dvl_bogdan にプッシュしたいと思いますが、最初にプルする必要があるとは言えません。だから私:
git pull origin dvl_bogdan
これにより、マージする必要がある競合が発生します(なぜこれが起こっているのかわかりません)。この時点で、何かが正しくないと推測しています。とにかく、競合を解決すれば、次のことができます。
git push origin dvl_bogdan
プル リクエストの準備が整うまで、上記のすべての手順を繰り返します。次に、それらをさらに繰り返します。どこでフローを台無しにしていますか? リベースが重複したコミットを適用し続ける状況に何とかなりました:
   bogdan   5b31717  Merge branch 'develop_bogdan' of xx into develop_bogdan     8 May 2013
   Bogdan Neacsa    810d753  Updated payment service to recieve an Account entity now rather that creating it itself. Also change…   8 May 2013
   bogdan   429f97b  Fix to model and service in payments. Quick fix to tests after changes.     8 May 2013
   Bogdan Neacsa    7c6ff32  Updated payment service to recieve an Account entity now rather that creating it itself. Also change…   8 May 2013
   bogdan   d74ce5a  Fix to model and service in payments. Quick fix to tests after changes.     8 May 2013
   Bogdan Neacsa    8ab401e  Updated payment service to recieve an Account entity now rather that creating it itself. Also change…   8 May 2013
   bogdan   259349b  Fix to model and service in payments. Quick fix to tests after changes.     8 May 2013
ありがとう、ボグダン
編集: ------------ 私には不明確な部分 -------------------
したがって、私は dvl_bogdan ブランチにいて、リモート ブランチと同期しています。
git pull origin dvl_bogdan
これは、私が最新であることを示しています。今私がやります:
git pull --rebase -s recursive -X ours origin dvl_bkend
そして、これは私に競合を与えません。しかし、今私が試してみると:
git push origin dvl_bogdan
プッシュする前にプルを行うように求められますが、このプルによって競合が発生します。ここで何が起こっているのか本当に理解できません。