質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Git

Gitはオープンソースの分散バージョン管理システム(DVCS)です。

Q&A

解決済

2回答

9765閲覧

【git】git merge FETCH_HEAD について

official

総合スコア13

Git

Gitはオープンソースの分散バージョン管理システム(DVCS)です。

0グッド

0クリップ

投稿2019/03/25 11:52

前提

ローカルブランチ: master

git merge FETCH_HEAD

git fetch 後、ローカルの master ブランチの HEAD と fetch 後の FETCH_HEAD とは差分があるにもかかわらず、git merge FETCH_HEAD しても git already up-to-date となります。

$ git diff HEAD FETCH_HEAD ... 差分がずらずら ... $ git log HEAD..FETCH_HEAD ... 未マージのコミットが1件存在 ...

上記のとおり、diff および log で差分が確認できております。

結果てきにマージはできたが。

git merge origin/master とすれば、無事差分をマージすることはできました。
がしかし上記のとおり、FETCH_HEAD に対しても、 master 差分があるにもかかわらず、

git merge FETCH_HEAD ではAlreadyで git merge origin/master では、マージが無事行えたの違いについて、
いくら調べても、情報が見つけられずしっくりきていません。

何卒宜しくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

多分追跡ブランチに登録されていない為だと思います。

git fetchした後に、 .git/FETCH_HEAD というファイルの中身を見てみて下さい。
恐らく全て not-for-merge という表示になっていないでしょうか?

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx not-for-merge branch 'master' of github.com:yyyyyyy/zzzzzzz

試しに以下のコマンドで追跡ブランチを登録してみてください。
git branch --set-upstream-to=origin/master ローカルブランチ名
⇒ ローカルブランチ名はご質問の内容を見るとmasterでしょうか。

その後、もう一度 git fetchし、.git/FETCH_HEAD というファイルの中身を見てみて下さい。
そうすると、 not-for-mergeが外れている事が確認出来ると思います。

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx branch 'master' of github.com:yyyyyyy/zzzzzzz

その後に、git merge FETCH_HEADすれば、マージ出来ると思います。

簡単に説明すると、FETCH_HEADはこのファイルに書かれているコミットIDを参照していますが、
not-for-merge となっていると対象外となります。

しかし、上記のご質問に書かれている git merge origin/masterだと直接上記のコミットID
xxxxxを指定してmergeしているのでマージ出来たのではないかと思います。

※ ご質問内容からの推測なので、間違っていたらすみません。あと、alreadyになる原因としては
ローカルブランチに何らかの変更が入っている場合もFETCH_HEAD指定ではマージ出来なかったと思います。どちらかが原因の可能性が高いと思いますので、ご確認してみてください。

投稿2019/03/26 11:47

choitarou

総合スコア112

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

official

2019/03/27 07:05

choitarou さん、まさにその通りでございました。 無事、問題が解決できました。あわせて、 --set-upstream-to= についても勉強しより知識が深まりました。 本当にありがとうございました。
guest

0

ぜんぜん回答つかねぇ。。

投稿2019/03/26 05:51

official

総合スコア13

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問