如何删除我在推送到Github后对特定文件夹所做的更改

时间:2016-07-06 14:28:00

标签: git

所以这就是问题所在,我对app/views文件夹中的Rails应用程序进行了一系列更改,并推动了更改。我可以看看Github UI并逐行恢复这些变化,但必须有一个更简单的方法。这些更改是在2次提交之前完成的。有没有办法将app/views文件夹中的所有内容更改回状态2提交,然后在Github上向上推/覆盖这些更改。最好的方法是什么?

理论上,这似乎很接近,但我知道这些命令会重置我的整个应用程序......这不是我想要的。我只想重置某个文件夹:

git checkout <branch-name>
git reset --hard <commit that I want>
git push -f origin <branch-name>

2 个答案:

答案 0 :(得分:1)

我认为你所追求的是

git checkout <branch-name>
git checkout <commit that you want> -- folder/that/you/want
git add folder/that/you/want
git commit -m "revert bad changes"
git push origin

这应该使用干净的工作区来完成,至少在folder/that/you/want

之内

答案 1 :(得分:0)

使用git rebase -i,将每一行更改为edit,然后使用git checkout goodcommit dirtoreset