$git reflog 6c832d6 HEAD@{0}: reset: moving to 6c832d68f725097351c12eecc2b5c2b18a42c1ef 57bd6b7 HEAD@{1}: commit: ci C 7fdfcae HEAD@{2}: commit: ci B 0742660 HEAD@{3}: commit: ci A 6c832d6 HEAD@{4}: checkout: moving from master to develop 6c832d6 HEAD@{5}: commit (initial): first ci
当回退到 first ci 这次提交的时候,git log就没有A,B,C三次提交了。创建并切换到new_branch分支上,把ABC三次提交的内容扔进去。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
$git co -b new_branch $git reflog 6c832d6 HEAD@{0}: checkout: moving from develop to new_branch 6c832d6 HEAD@{1}: reset: moving to 6c832d68f725097351c12eecc2b5c2b18a42c1ef 57bd6b7 HEAD@{2}: commit: ci C 7fdfcae HEAD@{3}: commit: ci B 0742660 HEAD@{4}: commit: ci A 6c832d6 HEAD@{5}: checkout: moving from master to develop 6c832d6 HEAD@{6}: commit (initial): first ci
$git cherry-pick 0742660 [new a1a0daa] ci A 1 file changed, 1 insertion(+) $git cherry-pick 7fdfcae [new d200ef4] ci B 1 file changed, 1 insertion(+) $git cherry-pick 57bd6b7 [new 059caa3] ci C 1 file changed, 1 insertion(+)