有没有办法重做 git-svn rebase。或重置任何效果。
在我的 +8000 提交 git-svn 存储库中,合并分支后出现问题。我的本地“master”没有反映任何接近完整主干日志的内容。
和跑步git svn rebase
正确地获取新的修订版本,然后尝试应用来自 svn 主干的所有 8000+ 次提交。
有没有办法重置并确保master的HEAD指向trunk的HEAD?
术语有些混乱:“HEAD”与“head”或“tip”不同。 “HEAD”指的是当前签出的分支。
反正。 :)
如果你真的想扔掉你所做的一切并将你的主人返回到主干的精确副本,那非常简单。假设 master 已签出:
git reset --hard trunk
Warning:Reset --hard 销毁未提交的更改。
如果你想对以前的工作进行高级拯救,让我给你一个非常非常简短的介绍,介绍 git 的众多安全带之一:reflog。例如,如果你说
git log -g master
你会看到 master 的“保存点”列表。我们称之为 git land 中的 reflog。每当操作更改分支时,它都会在该分支的引用日志的顶部添加一个新的保存点。换句话说,如果您执行的最后一个操作严重搞乱了您的分支,您可以将分支返回到该操作之前的状态:
git reset --hard master@{1}
That @{1}
一旦你查看了转发日志,就会更有意义。 git 还支持更华丽的语法,比如@{10.minutes.ago}
.
还有更多事情是可能的,但这应该足以暂时解决问题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)