我知道这个问题已经被问过了,但是我似乎无法完全用远程分支替换我的本地分支。我在本地分支中安装了一个第三方插件,并且在删除安装时遇到了问题;因此,我想要使用远程版本的分支“重新开始”。本地分支名为“dev”,远端分支名为“origin/dev”。我尝试了三种用远程版本替换本地分支的方法:
1. git reset HEAD --hard
2. git reset --hard origin/dev
3. git checkout dev
git fetch
git reset --hard origin/dev
执行上述git命令后,通过查看本地代码,我仍然可以看到插件中剩余的文件和文件夹。使用git status,显示“您的分支已经是'origin/dev'最新版本,无需提交,工作目录干净”。使用git status --ignored,列出了太多的文件……基本上是我.gitignore文件中的所��内容。我只想要存在于远程dev分支中的代码,不需要其他任何东西。有人能帮忙吗?更新:事实证明,我得到的错误是由于目录root/var/cache/*中大量的文件所致。我的.gitignore文件中包含以下条目:
/var/*
!/var/package
var/session/*
尝试了恢复本地dev分支的多种方法(如上述问题中列出的以及下面提出的解决方案),`root/var/cache`目录仍然存在。在我的应用程序重新开始运行之前,我必须手动删除它。查看github,远程dev分支没有包含 `root/var/cache`。有人能告诉我为什么 `root/var/cache` 不响应git命令以替换本地分支与远程版本吗?
.git
文件夹。然后,您可以从.git
文件夹中恢复所有内容。使用单个或多个rm -rf ...
命令似乎不需要太多的工作量。 - Honggit status
和git status --ignored
的输出添加到问题中,并指出你想要删除哪些显示的文件。 - AD7six