1. ホーム
  2. ギット

[解決済み】ローカルブランチを別のローカルブランチにマージする

2022-04-02 07:15:27

質問

私はマスターから分岐した複数のブランチを持っています(それぞれ別のサブディレクトリにあります)。

  • Branch1: 新規開発、まだ完全には完成していない
  • Branch2: 問題のホットフィックス、ただしまだテスト中
  • Branch3: 復元しないブランチです。

修正プログラムのテストが終わる前に、Branch1ですでにコードを利用できるようにしておき、修正プログラムを適用した状態で開発を続けられるようにしたい。

(しかし、私はgitの経験がそれほど多くないので、Branch1やBranch2を混乱させる前に、特に混乱させるために作成した第3ブランチでマージして遊び始めたのです)

3番目のブランチでは、まず次のことを試してみました。

git merge feature/Branch1

が、これでは以下のようなエラーになります。

fatal: 'feature/Branch1' does not point to a commit

次にBranch1でcommit -aを行い、再度試しましたが、同じエラーが出続けています。

私は何を間違えているのでしょうか?この場合、Branch1からのコードをBranch3にマージするにはどうしたらいいでしょうか?

解決方法は?

まず、Branch3へチェックアウトします。

git checkout Branch3

そして、Branch1をマージします。

git merge Branch1

また、Branch1 の更新されたコミットを Branch2 に反映させたい場合、おそらく次のようなものを探していることでしょう。 git rebase

git checkout Branch2
git rebase Branch1

これにより、Branch2がBranch1の最新のアップデートに更新されます。