繁体   English   中英

git pull失败后显示未跟踪的文件

[英]Untracked files show up after failed git pull

我从一个干净的工作目录开始。

On branch master
nothing to commit, working directory clean

然后我做了一个git pull,失败了,有两个权限错误:

error: unable to unlink old '.gitignore' (Permission denied)
fatal: cannot create directory at 'vendor': Permission denied

突然,我的工作目录中有许多以前没有的未跟踪文件。

我曾尝试解决权限问题,该问题首先使拉取失败,但谁能向我解释为什么未跟踪的文件会被本地放置到我的项目文件夹中?

这是预期的行为吗?

看起来git由于文件权限而在其提取过程中失败。

我在失败的进程上运行了一个strace ,它表明尽管出现了“权限被拒绝”错误,但git继续尝试写入其他文件。 后来,由于有错误,它没有完成合并过程,而将本地存储库保留为以前的状态:而不是将.git/index.lock重命名为.git/index (当合并成功时),它只是删除了.git/index.lock

您可以在这里执行git reset --hard然后再次拉,因为您的本地开始时很干净。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM