gitの初心者です。以下、操作方法そのものが正しくなかったかもしれませんが、問題が発生してしまいました。
行った操作 (下記 git reflog の結果を参照ください):
- ローカルAでcommit/pushしていたものを commit: bbbbbbの時点で ローカルB (さくら レンタルサーバ)にclone
- ローカルBのファイル一部変更(commitはせず)
- ローカルAに戻り、別のファイルを変更し、commit/push
- ローカルAで上記3 を reset --hardで取り消し
- ローカルAで cccccc、dddddd の変更をしcommit/push
- ローカルBで、プロジェクトフォルダを一旦削除し、再度 clone
=> 結果: (origin/master, origin/HEAD) HEAD@{3}: の時点のファイルがダウンロードされてしまう。
ローカルA からの git reflog の結果:
9fb6772 (HEAD -> master) HEAD@{0}: commit: dddddd
ed5ed4f HEAD@{1}: commit: cccccc
94517dd HEAD@{2}: reset: moving to 94517d.....fc29
262cc04 (origin/master, origin/HEAD) HEAD@{3}: commit: bbbbbb
86ad14b HEAD@{4}: commit: aaaaaa
ローカルBで、(HEAD -> master) HEAD@{0}: commit: dddddd のものを pull出来るように戻すのにはどのようにすればよろしいでしょうか?
git log --graph の出力は以下です。
- 9fb6772 (HEAD -> test-branch, master)
- ed5ed4f
| * 262cc04 (origin/master)
| * 86ad14b
|/
- 94517dd
- 0668131
- 5799a38
- d40ec81
- 7bce0eb
- 5428f90
- e5935e9
- a8f3af4
- 36e5df6
- f28ed93
- 92aaeca
- f16d54e
- 9affeb6
- 11fccd2
よろしくお願いいたします。
reflog を記載していただいていますが、ツリー構造がわかりにくいので、 `git log --graph -C -M --pretty=format:'%h %d' --all --date=short` 等でグラフ付きの出力をだして、ローカル A / B の位置を記載していただくことは可能でしょうか? ( おそらく commit コメント等の内容がわかる記載は、入らないとおもいます。ブランチ名がまずければ、置き換えてください。)
回答1件
あなたの回答
tips
プレビュー