0

機能ブランチとマスターブランチがあります。私の機能ブランチはマスターブランチからチェックアウトされましたが、現在マスターブランチにあるいくつかのコミットの前にチェックアウトされました。

マスターブランチの上にコミットをリベースしたいのですが、マスターの履歴を変更したくないので、リベースですべてのコミットを一挙に適用し、リポジトリの履歴の整合性を維持したいと思います。リモートブランチ。

これはgitrebaseで可能ですか?

マスターでこれを行う

git rebase feature-branch-name

私の機能ブランチでマスターの履歴を再生しましたが、これは私が意図したものではありません。

4

1 に答える 1

6

はい、これは可能です、そしてあなたはあなたの試みに非常に近かったです。あなたはそれを逆にする必要があります。

機能ブランチから、これを実行します。

git rebase master

このプロセス中にマージの問題を解決するように求められる場合があることに注意してください。これが完了すると、機能ブランチで実行したコミットの前に、マスターからの最新のコミットが機能ブランチに表示されることがわかります。次に、マスターブランチから次のコマンドを実行できます。

git merge feature-branch-name

これにより、マスターブランチに機能ブランチからのすべてのコミットが含まれるようになります。マージするときはさまざまなオプションがあります。デフォルトから得られるものが気に入らない場合は、gitのドキュメントを参照してください。

于 2012-10-26T18:31:09.137 に答える