我是编码新手,我试图弄清楚如何在我的终端中提交。我执行了命令 git add -A ,然后 git 开始请求对我所有文件的许可,我拒绝了,他们没有考虑太多(我吓坏了,我不知道这是否是我仍在学习的可信来源)。但现在我却陷入了一个更大的问题。当我现在尝试创建文件时,由于无法通过 git 访问我的文件,因此无法创建文件。
会弹出一条警告:
error: open("Library/Application Support/FileProvider/8B7B18C3-4F13-4F7D-A0CD-EF8531215A66/wharf/tombstone/a"): Permission denied
error: unable to index file 'Library/Application Support/FileProvider/8B7B18C3-4F13-4F7D-A0CD-EF8531215A66/wharf/tombstone/a'
fatal: adding files failed
如果有人能给我一个关于如何解决这个问题的分步指南,我真的很茫然,我将非常感激!谢谢!
更不用说我已经尝试了几乎所有方法来解决这个问题,但没有任何效果!!!
看起来您已经在主目录中创建了一个存储库,这几乎不是一个好主意,因为存储库控制着其下的所有文件,通常您不希望所有主目录都在一个存储库中。
在 macOS 上,某些文件在某些方面受到限制,超出了标准 Unix 权限和 Git 使用的标准 Unix 接口,这就是您看到此错误的原因,因为您正在尝试添加这些文件。
将文件标记为 0777 也是一个坏主意,因为这允许系统上的每个用户写入您的文件。即使这只是您的笔记本电脑,上面运行的服务也专门以低权限运行,因此如果存在安全问题,它们将无法访问大多数文件,然后您就使该服务有可能篡改与这些文件。
您可能想要做的是通过执行
.git
删除主目录中的 mv ~/.git ~/.git.bak
目录。这会将其移到一边,这样您就不会丢失任何数据,然后,当您确定不需要它时,可以删除.git.bak
。
然后,您可以更改为您正在处理的项目的特定目录并运行
git init
。然后,您可以根据需要运行 git add
和 git commit
,它不会尝试在该目录之外添加文件。这意味着您的所有项目文件都需要位于该目录或其子目录中,但这通常是您想要的。