我想知道git rebase如何帮助恢复变化.我无法理解为什么rebase比合并恢复更改更容易.
更新1:
恢复更改我的意思是,还原以前版本的master.
>大师v1
>大师v2
>大师v3
>大师v4
>大师v5
此时我想恢复为Master v4.
更新2:
当我的意思是帮助时,我并不是说您使用rebase或merge进行恢复.
我会更好地解释我的同事说的话:
例如,你有这个日志:
>提交时间1:最初掌握[tag-x]
>提交时间2:从主人分支a
>提交时间3:来自master的分支b
>提交时间4:分支a上的随机提交
>提交时间5:分支b上的随机提交
>提交时间6:使用merge [tag-a]将分支a放入master
>提交时间7:使用merge [tag-b]将分支b放入master
他说恢复更难,因为提交并非全部归为一组.但对我来说没有任何意义,如果你还原一个标签,让我们说[tag-a],主人没有从分支b的变化.我也不关心何时在分支b上进行提交,即使它们与分支a中的提交交错(及时).或者我错过了git如何工作的一个非常重要的一点……
当我恢复到[tag-a]时,我真的不在乎在master中完成了多少次提交,我只是得到了[tag-a]的主人,简单,独立于提交的次数和时间制作.
谢谢
最佳答案 当重新定位时 – 树更直,没有不必要的“分支”(通过分支,我的意思是在提交树的结构上文字分支,而不是“git branch”),这使得更容易找到某个阶段来恢复.
当很多人使用一个repo合并它时,每次创建一个复杂的树结构.