2014-04-17 106 views
0

在我们的回购的历史中有一个承诺,推动等。我有SHA,我想运行相当于git revert /one/folder/* THESHAID,但git恢复看起来不像它只能更改特定文件夹。如何恢复部分提交?

有没有一种方法来复制该功能?

+0

,使其包含所需的更改您可以手动编辑补丁目录,然后还原修补程序(修补程序-R -p1 )&提交。 – brokenfoot

回答

1

这是足够古怪一点也不奇怪,没有它的按钮,特别是当蛮力方法是如此简单:

git revert that_commit   # do the whole revert 
git reset --hard HEAD^   # in what turns out to have been a throwaway commit 
git checkout [email protected]{1} -- one/folder # and just take what you want of the results 
+0

我刚刚投票结束这个复制,@ vcsjones的链接答案在概念上更清洁但执行时更笨拙,请选择。 – jthill

+0

我检查了其他答案..这些命令的逻辑对我来说更有意义... – Damon