📅  最后修改于: 2023-12-03 15:22:50.554000             🧑  作者: Mango
有时候,当我们在提交代码到 Github 仓库时,可能会不小心提交了一些不必要的文件,此时我们需要通过删除这些文件来修复问题。但是,如果我们删除的文件正在推送到 Github,如何才能解决这个问题呢?
下面是一些解决此问题的方法:
如果我们发现了提交的文件有问题,并且我们希望将更改反悔,我们可以使用“撤销本地提交”的方法。这需要在 Git 中使用 git reset
命令。
git reset HEAD~1 (--soft)
这个命令将会“撤销”最新的提交,并将更改保存在本地,以便我们可以修改它们。
如果我们仍然希望将这些更改推送到 Github,请勿在这个命令中使用 --soft
选项,然后使用 git push
命令来将更改推送到 Github。
如果我们删除了文件,并且我们确定我们希望在 Github 上删除它们,我们可以使用“强制推送”方法。这需要在 Git 中使用 git push --force
命令。
git push --force (origin branch)
使用这个命令将会强制推送你本地的更改覆盖 Github 的历史记录,因此需要慎重使用。如果其他开发人员已经使用了这个历史记录,那么你的更改可能会破坏他们的工作。
git revert命令是用于撤销已经发布到公共上游分支(master)的提交的,因为在这个分支上很多人都已经合作,所以直接覆盖历史记录会非常危险,因此我们需要使用git revert命令。
git revert hash-code
使用这个命令将在 Git 中创建一个新的提交,这个提交将撤销之前的提交。然后,我们可以使用 git push
命令将新的提交推送到 Github。
不过,需要注意的是,这种方法的缺点在于,它会在 Git 中创建新的提交,这可能会导致提交历史记录变得混乱。
以上就是一些解决如何解决文件正在推送到 Github 的方法。在使用这些方法时,需要注意安全性,并谨慎地实施更改。