0

在此处输入图像描述

我在分支中有一个不应该存在的文件 ( driver_06_05_2015.view)ServiceProvisionSpecialist_06_08_2015并且即使它应该在分支中也被错误地提交到该driver_06_05_2015分支。

有没有办法我可以通过重写历史将文件(而不是整个提交)移动到 driver_06_05_2015 分支(我认为当人们说它指的是 rebase 命令时......)

4

1 回答 1

1

更新:现在使用 rebase,因为我看到您需要编辑倒数第二个提交。

您可以使用交互式变基,并变基到您要编辑的那个的父提交。在这种情况下,

git rebase -i HEAD~2

在编辑器中,在添加了您要删除的文件的提交行上pick替换为。edit然后关闭编辑器。

交互式变基将在该提交处停止,现在您可以编辑:

git rm --cached socialMediaGenerator/src/driver_06_05_2015.view
git commit --amend
git rebase --continue

--cached选项允许您从 Git 中删除文件,但将其保留在磁盘上。然后你可以将它添加到另一个分支中:

git checkout driver_06_05_2015
git add socialMediaGenerator/src/driver_06_05_2015.view
git commit -m "Add file driver_06_05_2015.view"
于 2015-06-11T15:22:45.927 回答