10

Gitを使い始めたばかりですが、ブランチに機能を実装しているときに、できるだけ早くトランクにプッシュする必要のあるバグが発生することがわかりました。そのために、チェックアウトを使用してトランクに戻り、変更を加えてコミットします。バグのないトランクができました。

残念ながら、私のブランチでもこのバグを修正する必要があります。機能が完全ではないため、ブランチをトランクにマージすることはできません。トランクに加えた変更を受け取るようにブランチを変更するにはどうすればよいですか?

重要な場合は、私は自分で開発しているので、心配するリポジトリは1つだけです。

私はTortoiseGitを使用しているので、それに固有の手順は役に立ちますが、必須ではありません。

4

2 に答える 2

25

ブランチがチェックアウトされていることを確認し(git checkout branch-name)、実行します

git rebase master

そして、到着した競合を解決します。

これらのコマンドの機能がわからない場合は、TortoiseGitを使用せずに、ターミナルを使用してみてください。コマンドを本当に理解するのに役立ちます。

警告:これはローカルブランチを想定しています。ブランチを共有している場合は、リベースを実行しないでください(履歴が変更されるため)。走る

git merge master

あなたがあなたの他のブランチにいる間。これはあまりクリーンな履歴がありませんが、使用できます。

違いは次のとおりです。

  • リベース-マスターの上にブランチを書き換え、すべての変更を再生します
  • マージ-通常のマージで、2人の親とのコミットを作成します
于 2010-09-05T12:40:06.007 に答える
1

リポジトリを他の人が利用できない場合は、git rebase master上記のように機能します。

リポジトリが公開されている場合は、リポジトリのクローンを作成した他のユーザーを台無しにする可能性があるため、実際にはリベースしたくありません。その場合、git merge masterトランクからの変更を機能ブランチにマージするために使用する必要があります。

于 2010-09-05T12:44:34.620 に答える