我不确定如何使我的本地git仓库处于当前状态,但当我在主分支上并尝试切换到另一个分支时,我会得到以下错误信息:
我已经混淆了实际路径和文件名。问题出在“Checklist”文件夹上。在版本库中和我的本地文件路径中,这个文件夹的名称为“CheckList”(注意大写字母 L)。我尝试了以下命令,但都没有解决问题:error: The following untracked working tree files would be overwritten by checkout:
src/path/to/Checklist/filename.ext
git reset --hard HEAD(没有错误输出,但不能解决问题)
git reset --hard origin/master(没有错误输出,但不能解决问题)
git rm src/path/to/Checklist/filename.ext("fatal: pathspec 'src/path/to/Checklist/filename.ext' did not match any files")
git add -A && git stash("No local changes to save")
我也尝试过删除“CheckList”文件夹然后重置--hard。我还尝试将文件夹重命名为“CheckList2”,然后重命名为“Checklist”,然后删除或不删除它,然后再重置--hard。这些组合都没有解决问题。
我能够使用“-f”选项检出其他分支,但每次回到主分支时,问题都会重新出现。
请注意,在GitLab中浏览主分支时,没有名为“Checklist”的文件夹(只有正确命名的“CheckList”文件夹)。因此,似乎不存在版本库中存在两个名称相同但大小写不同的文件夹的问题。
--编辑--
因此,您不必阅读接受答案的评论,我问题的具体解决方案是查看我正在尝试检出的其他分支。'master'分支或我的本地路径中不存在“Checklist”文件夹。相反,那些其他分支都有一个名为“CheckList”和一个名为“Checklist”的文件夹。由于这是Windows文件系统,所以不允许这样做。错误消息只是误导性的。
git reset --hard HEAD
命令来恢复它,希望能够恢复正确的大小写。 - undefined