Gin*_*ina 6 git github git-revert git-cherry-pick
我正在研究我的工作feature branch,经过审核后,将其合并development到部署中.后来,一位同事决定发布并合并他和我的master.在部署时,他意识到他的代码是错误的并且还原了master.
在我们的fork-and-pull流程中,这意味着现在development和master都被还原.
当我今天早上进来的时候,我按照惯例从发展中重新定位,然后学会了恢复.
现在我正在尝试cherry-pick从原来的工作feature branch只是意识到它给了我"空提交消息",因为恢复.
任何帮助是极大的赞赏.
Joh*_*ter 12
Cherry-pick和rebase检查提交的补丁id(基本上是更改的散列),并且已经看到分支上存在更改,因此它不会选择它.重新绑定有时可以起作用,因为文件中的更改可能导致实际差异稍微改变 - 导致不同的补丁ID - 但对您来说情况似乎并非如此.
您可以"恢复还原",但这会重新引入您的同事介绍的损坏位.然后你需要恢复你的同事提出的错误提交.这是一个很好的回复,并且保持平稳,所以慢慢来,让别人和你坐在一起,以确保你不会错过任何东西.
另一个选择可能是通过执行来重放您的提交git show COMMIT_ID | git apply.这会将diff重新应用于您的工作树.只要您的树是干净的,您就可以使用git commit -C COMMIT_ID来重新使用原始提交中的消息.您可以使用git format-patch并git am避免额外的步骤.