我遇到了rebase的问题。我想压制一些版本,但我不能。
这是我执行命令git log –oneline
时得到的:
git log --oneline
2e6d3cf Fix bug fetching data
4abe96e conflicts merged
34d130d latam_schedule with geotargeted languaje and data fetching
8687f73 removes extra lines, and add the includes I remove before.
eed4f10 unnecessary adds and sample block removed
d2d58e6 latam_schedule with geotargeted languaje and data fetching
75b1b6d parseo el string para extraer las horas.
8a3b067 Agrego un render con datos reales
d856ef1 Agrego un render de data dummy
7331f83 Alert removed(commented)
128bfc1 First LATAM commit
4dd79cb Merge pull request #1016 from matterhorn/disco-608-bugfix
问题是,当我执行git rebase HEAD~3
时,我没有看到我要压缩的2e6d3cf,4abe96e和34d130d提交。
当我执行git rebase -i HEAD~3
:
pick 34d130d latam_schedule with geotargeted languaje and data fetching
pick d2d58e6 latam_schedule with geotargeted languaje and data fetching
pick eed4f10 unnecessary adds and sample block removed
pick 8687f73 removes extra lines, and add the includes I remove before.
pick 2e6d3cf Fix bug fetching data
问题是我不知道为什么d2d58e6,eed4f10和8687f73在列表中。另一方面,如果我尝试继续进行压缩,那么应该存在很多冲突(比如尝试合并太旧的文件)。
这是git log --oneline --graph --decorate
显示的内容
git log --oneline --graph --decorate
* 2e6d3cf (HEAD, matterhorn-latam/latam, latam) Fix bug fetching data
* 4abe96e conflicts merged
|\
| * 8687f73 (matterhorn-latam/master, master) removes extra lines, and add the includes I remove before.
| * eed4f10 unnecessary adds and sample block removed
| * d2d58e6 latam_schedule with geotargeted languaje and data fetching
* | 34d130d latam_schedule with geotargeted languaje and data fetching
|/
* 75b1b6d parseo el string para extraer las horas.
* 8a3b067 Agrego un render con datos reales
* d856ef1 Agrego un render de data dummy
* 7331f83 Alert removed(commented)
* 128bfc1 First LATAM commit
有什么想法吗?
答案 0 :(得分:0)
没有观察到必要的提交,因为HEAD~3
告诉git始终跟随提交树中的第一个父级,这恰好遵循合并的分支历史‡,即来自您的问题,而不是你追求的历史。
您需要在commit^1
和commit^2
之间明确选择(以及commit^3
以进行章鱼合并)以导航树。以你的例子:
git log --oneline --graph --decorate
* 2e6d3cf HEAD
* 4abe96e HEAD^1 = HEAD~1 (! History branches here. !)
|\
| * 8687f73 HEAD^1^1 = HEAD^^ = HEAD~2
| * eed4f10 HEAD^^^ = HEAD~3
| * d2d58e6 HEAD^^^^ = HEAD~4
* | 34d130d HEAD^2 (! Note !)
|/
* 75b1b6d HEAD^2^ = HEAD^^^^^ = HEAD~5
* 8a3b067 ...
* d856ef1 ...
* 7331f83 ...
‡这里的顺序有点不寻常,因为合并提交会记录父项,使得合并时的HEAD始终是第一个父项,并且意味着当你完成合并以便计算为第一个时,你必须已经在8687f73上。