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

标签 git

我的 git 历史记录中有一个过去的提交,当时我正在处理一个功能“X”并意外提交了一个与该功能无关的文件以及其他相关文件。

现在我正在处理功能“Y”,它实际上与之前错误提交的文件相关。

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

最佳答案

这就是我处理你的问题的方式:

开始交互式 rebase :

git rebase -i COMMIT-OF-FEAT-X^ # notice the ^ at the end

然后将相关提交的 pick 更改为 edit
然后您将(请建议更好的措辞)该特定提交。

从提交中删除文件:

git remove --cached wrong_file

然后该文件将被取消跟踪。

继续 rebase :

git rebase --continue

你已经完成了。

您现在可以切换到 feat-Y 分支并添加文件、提交它,或者用它做任何您想做的事情:

git co feat-Y
git add wrong_file

关于git - 如何处理文件被添加到 git 中的错误提交?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11180827/

相关文章:

git - 如何让Git克隆到当前目录

使用终端进行私有(private)存储库的 Git 克隆失败

git - git 子模块的 build.gradle 更改

git 所有标记为冲突的文件

git checkout 获取 ASCII 文件而不是二进制文件

git diff 显示完整文件已针对单行更改进行了更改,但仅针对目录中的少数文件

基于gitolite的gitlab安装失败

svn - 如何使用 git-svn 将根植于不同目录的 svn 分支导入到 git 中?

git - 用于检查当前 git 分支是否为 "x"的 bash 脚本

git - 尝试克隆git-项目名称不正确吗?