マスターから分岐した複数のブランチがあります (それぞれ別のサブディレクトリにあります)。
- newdevBranch: 新しい開発、まだ完全には完了していません
- hotFixBranch: 問題に対する修正プログラムですが、まだテスト中です
- messAroundBranch: 復元しない、messaround ブランチ
修正プログラムのテストが完了する前に、修正を適用した状態で開発を継続できるように、コードをnewdevBranchで利用できるようにしたいと思います。(ただし、git の経験がそれほど多くないため、まずは、 newdevBranchまたはhotFixBranchを台無しにする前に、特にいじくり回すために作成されたmessAroundBranch
でマージを試してみることにしました。)
私のmessAroundBranchでは、まず次のことを試しました。
git merge feature/newdevBranch
しかし、次のようなエラーが発生しました。
fatal: 'feature/newdevBranch' does not point to a commit
次に、newdevBranch で commit -a を実行して再試行しましたが、同じエラーが発生し続けます。
何が間違っているのでしょうか? この場合、newdevBranch のコードと messAroundBranch のコードをマージするにはどうすればよいでしょうか?
ベストアンサー1
newdevBranch
: 新しい開発、まだ完全には終わっていないhotFixBranch
: 問題に対する修正プログラムだが、まだテスト中messAroundBranch
: ブランチをいじっているが、復元しない
まず、次の場所でチェックアウトしますmessAroundBranch
:
git checkout messAroundBranch
次に を にマージしnewdevBranch
ますmessAroundBranch
:
git merge newdevBranch
そして、hotFixBranchのnewdevBranchの更新されたコミットが必要な場合は、おそらく次のものを探しているでしょう。git rebase
git checkout hotFixBranch
git rebase newdevBranch
hotFixBranch
これにより、 の最新のアップデートが更新されますnewDevBranch
。