如何处理在git中添加到错误提交的文件?

Nit*_*eti 3 git

我在我的git历史中有一个过去的提交,我正在处理一个功能'X'并且意外地提交了一个文件,该文件与此功能以及其他相关文件无关.

现在我正在处理功能'Y',它实际上与之前错误提交的文件有关.

如何以最好的方式处理这种情况?

Sam*_*ane 5

这就是我如何处理你的问题:

启动交互式rebase:

git rebase -i COMMIT-OF-FEAT-X^ # notice the ^ at the end
Run Code Online (Sandbox Code Playgroud)

然后更改选择以编辑相关提交.
然后,您将进入(请建议更好的措辞)具体提交.

从提交中删除文件:

git remove --cached wrong_file
Run Code Online (Sandbox Code Playgroud)

那个文件将被取消跟踪.

继续变革:

git rebase --continue
Run Code Online (Sandbox Code Playgroud)

你完成了.

您现在可以切换到feat-Y分支并添加文件,提交它,或者随意执行任何操作:

git co feat-Y
git add wrong_file
Run Code Online (Sandbox Code Playgroud)