如何还原部分提交? [复制]
Posted
技术标签:
【中文标题】如何还原部分提交? [复制]【英文标题】:How to revert part of a commit? [duplicate] 【发布时间】:2014-06-02 09:20:12 【问题描述】:在我们的回购历史中有一个提交、推送等。我有 SHA,我想运行 git revert /one/folder/* THESHAID
的等效项,但 git revert 看起来它不能只更改特定文件夹。
有没有办法复制该功能?
【问题讨论】:
您可以手动编辑补丁,使其仅包含所需目录中的更改,然后恢复补丁(补丁 -R -p1这很奇怪,没有按钮也不足为奇,尤其是当蛮力方法如此简单时:
git revert that_commit # do the whole revert
git reset --hard HEAD^ # in what turns out to have been a throwaway commit
git checkout HEAD@1 -- one/folder # and just take what you want of the results
【讨论】:
我也刚刚投票决定将其作为 dup 结束,@vcsjones 的链接答案在概念上更简洁,但执行起来更笨拙,请自行选择。 我查看了另一个答案。这些命令的逻辑对我来说更有意义...以上是关于如何还原部分提交? [复制]的主要内容,如果未能解决你的问题,请参考以下文章