小编典典

我可以在 GIT 中进行部分还原吗

all

是否可以在多文件提交中仅恢复单个文件或文件中的某些更改?

全文
我提交了一堆文件。之后的一些提交,一个将保持无名的人(杰克!!!)将一个文件复制到他的存储库并提交了几个文件,覆盖了我所做的一些更改。我想恢复一个被破坏或更好的文件,进入并恢复该文件中的两个更改。这必须是一个单独的还原提交,因为它是被拉和推的。


阅读 94

收藏
2022-07-28

共1个答案

小编典典

通过添加“–no-
commit”选项,您可以在不创建新提交的情况下恢复提交。这会将所有恢复的文件留在暂存区域中。从那里,我将执行软重置并添加我真正想要的更改。对于示例工作流程:

git revert <sha-of-bad-commit> --no-commit
git reset   // This gets them out of the staging area
<edit bad file to look like it should, if necessary>
git add <bad-file>
git checkout . // This wipes all the undesired reverts still hanging around in the working copy
git commit
2022-07-28