【发布时间】:2021-09-14 04:18:55
【问题描述】:
我在使用 git 时遇到以下问题 - 当我尝试将提交推送到源(在我的情况下是网络文件夹)时,它会出现以下错误:
警告:无法取消链接 './objects/incoming-a16140/6f': 目录不为空
错误:无法写入 sha1 文件名 ./objects/6f:目录不为空
警告:无法取消链接'./objects/incoming-a16140/cf':目录不为空
错误:无法写入 sha1 文件名 ./objects/cf:目录不为空 到 X:strengs_master.git ! [远程拒绝] bugs/wind_zone_2_Poland -> bugs/wind_zone_2_Poland(无法将对象迁移到永久存储)
它以前可以工作,但这里有趣的是(与我读过的类似问题相比)当我尝试 3 到 5 次时,通常它最终会成功推动它。但是每次都得试几次才能成功。
我的git版本是:git version 2.19.0.windows.1
我有权访问服务器上的文件夹,并且我可以通过 ssh 从外部 IP 远程访问,但不存在此类问题。
非常感谢任何有帮助的建议!
【问题讨论】:
-
永远不要将 Git 存储库保存在某种共享驱动器上。
-
不将其保存在共享驱动器上是什么意思(应该保存在哪里,以便其他用户可以访问它)?它是一个网络位置,以前也是这样工作的。
-
您说“在我的情况下是网络文件夹”。这是一个问题。
-
我错了,但是 git repo 应该保存在某个地方,对吧?如果它在本地服务器上,有什么区别 - 在这两种情况下都有完全访问权限。您能说出正确的方法吗?
-
网络驱动器通常是指 onedrive、google drive、Dropbox 等。它们会破坏 repo 并可能导致您描述的那种问题。