【发布时间】:2021-02-27 07:41:29
【问题描述】:
无法删除.git
我有一个 git 存储库 Rift,我正在尝试删除它。在尝试运行 rm -rf 时,我收到错误:rm: cannot remove 'Rift/.git/objects/pack': Directory not empty。
当我导航到目录树的底部时,我找到了一个名为.fuse_hidden 的隐藏文件,后面跟着一串数字和字母,可能是十六进制。我可以手动删除这个文件,但是一旦我删除它,另一个附加了不同数字和字母的字符串就会在它的位置创建。
我试过rm .git/objects/pack/* && rm -rf .git、sudo rm -rf .git、chmod -w .git/objects/path和killall git,都没有成功。
【问题讨论】:
-
我猜你可能有一个除 git 之外的进程正在访问这个 git repo。尝试找出创建这些文件的原因并终止或暂时禁用该进程。
-
@ewong 这就是我想要做的,但我知道这样做没有简单的方法......
-
FUSE 是user-space file system framework。这意味着您的 Git 存储库中有一个挂载点。您需要撤消安装。
-
FUSE 是一个框架,但在 Linux 上,您不需要将设备挂载为文件系统。
mount命令将显示现有的挂载。 (也许您的存储库是在 FUSE 挂载下,而不是包含一个?也许有问题的用户空间文件系统也有问题。) -
@DeathWaltz:如果你重命名
.git会发生什么。新文件还会自己神秘地出现在那里吗?
标签: bash git delete-file fuse rm