2

私はこれについて困惑してきましたが、答えがわかりません。私のチームがorigin/develop(私はローカルで追跡しています) に取り組んでおり、私はローカル ブランチに取り組んでいるとしましょうfeat-search。私はいくつかのコミットを行っており、変更をdevelopブランチに取り込みたいと考えています。私のオプションは次のとおりです。

  1. git pull origin develop
  2. git pull --rebase origin develop
  3. git checkout develop; git pull origin develop; git checkout feat-search; git rebase develop
  4. git checkout develop; git pull origin develop; git checkout feat-search; git merge develop
  5. 上記のどれでもない; 私のブランチで作業を続けて、変更を持ち込まないでくださいdevelop

問題は、 を使用するgit pull --rebaseと、ブランチをマージすると git グラフが折りたたまれ、分岐していないように見えるということです。人々はそれを好まないかもしれません。を使用するgit pullと、開発が私のブランチにマージされ、グラフでも奇妙に見えます。

私は地獄のように混乱しています。どんな助けでも大歓迎です。

4

1 に答える 1

0

git pull --rebaseで、ブランチをマージすると git グラフが折りたたまれ、分岐していないように見えます。

これはバグではなく、履歴を線形に保つ機能です。
しかし、それはブランチを削除しません:あなたはまだブランチを外していますorigin/develop。へのマージがdevelop簡単なものであることを確認するだけです (の最新のコミットから作業しているためorigin/develop)。

git pull が常に rebase であることを確認することを推奨することもできます。

git config --global --bool pull.rebase true

リベースするローカル機能ブランチが多数ある場合は、 を使用してプロセスgit-rebranch自動化することもできます。

于 2013-09-04T19:07:27.247 に答える