たとえば、プロジェクトの master ブランチの下に一般的なクラス A があります。
私は開発用に新しいブランチ dev を作成しました (ローカルに 2 つのブランチがあり、1 つは master、1 つは dev です)。 class A の master ブランチのコードが更新されました
が、dev ブランチをプルしても、A は古いバージョンのままです。master ブランチのファイルをローカル dev にプルすると、ローカルの master と dev がマージされます。この問題を解決するにはどうすればよいでしょうか?
迷茫2017-05-02 09:30:19
マスターブランチのファイルをローカルの開発者にプルすると、ローカルのマスターと開発者がマージされます。この問題を解決するにはどうすればよいですか?
もちろん、master を dev にプルしないでください。これは本質的には fetch + merge 操作であるため、これは避けられません。
実際には多くの解決策がありますが、私は rebase
を使用することを好みます。つまり、最初に pull master
を使用し、次に rebase
,也就是先 pull master
,然后在 dev 分支下 rebase master
。这样做就等于把 dev
分支重新“落户”在 master
分支的最新节点(即:HEAD)上——当然,这个过程和 merge master
dev
rebase master
を使用します。支店。 。これは、master
ブランチの最新ノード (つまり HEAD) 上の dev
ブランチを再「設定」することと同じです。もちろん、このプロセスは次のプロセスと同じです。 merge master
同じ競合解決が (違いに応じて) 行われますが、2 つのブランチはマージされません。 さらに、このプロセスは頻繁に実行する必要があります (マスターが頻繁に更新される場合)。マスターがデプロイに使用するブランチである場合は、頻繁に更新しないことが最善です。そうしないと、ロールするのが非常に面倒になります。何か問題が発生した場合は元に戻ります。 🎜