git 重置 HEAD@{1} 不删除已添加的文件?
git reset HEAD@{1} not removing files that were added?
git reset HEAD@{1}
不会删除从 git pull
添加的文件吗?
我做了什么。我用了git pull
。得到最新的源代码。然后发现代码不好,想把我的代码恢复到以前的状态,所以就做了git reset HEAD@{1}
。它恢复了。
但是现在如果我再次尝试 git pull
我会得到这样的错误:
error: Untracked working tree file 'addons/auth_crypt/i18n/fr_CA.po' would be overwritten by merge. Aborting
如果我重命名该文件,它会为另一个文件抛出另一个相同的错误,我猜是在执行 git 重置之前在拉取时添加的。那么我是否需要手动 remove/rename 这样的文件,只有这样我才能 git pull
。或者有更简单的修复方法(可能有数百个这样的文件)?
我也试过git pull --rebase
,但得到同样的错误。
您在同一路径中有两个文件。一个本地和一个远程跟踪。如果你拉你的远程跟踪将覆盖你的本地文件。这就是 git 所宣称的。 Here 有更多信息可用。
另一个问题:如果您再次拉取,您会再次包含您试图通过使用 git reset HEAD@{1}
避免的相同代码,因为该命令没有更改您的远程分支。
git reset HEAD@{1}
不会删除从 git pull
添加的文件吗?
我做了什么。我用了git pull
。得到最新的源代码。然后发现代码不好,想把我的代码恢复到以前的状态,所以就做了git reset HEAD@{1}
。它恢复了。
但是现在如果我再次尝试 git pull
我会得到这样的错误:
error: Untracked working tree file 'addons/auth_crypt/i18n/fr_CA.po' would be overwritten by merge. Aborting
如果我重命名该文件,它会为另一个文件抛出另一个相同的错误,我猜是在执行 git 重置之前在拉取时添加的。那么我是否需要手动 remove/rename 这样的文件,只有这样我才能 git pull
。或者有更简单的修复方法(可能有数百个这样的文件)?
我也试过git pull --rebase
,但得到同样的错误。
您在同一路径中有两个文件。一个本地和一个远程跟踪。如果你拉你的远程跟踪将覆盖你的本地文件。这就是 git 所宣称的。 Here 有更多信息可用。
另一个问题:如果您再次拉取,您会再次包含您试图通过使用 git reset HEAD@{1}
避免的相同代码,因为该命令没有更改您的远程分支。