繁体   English   中英

如何在“git add”之后修复“警告:无法打开目录”。 Mac OS X Maverick 上的命令

[英]How to fix "warning: could not open directory" after "git add ." command on Mac OS X Maverick

我是 R 和 RStudio 的新手,目前正在参加在线课程以了解有关数据科学的更多信息。 在我的一个讲座中,我被要求在 github 中创建存储库并将项目与 git 链接之前,在 RStudio 中创建一个项目。 为了使预先存在的项目与 git 交互,我讲座中的说明告诉我使用“cd”命令导航到包含我的项目文件的目录,然后使用文件的位置和文件名。 我的项目文件当前位于我的桌面上,因此我输入了“cd ~ /Desktop/temporary_no_version_control”,但是该目录似乎没有改变,并且仍然设置在用户/savannahkeiffer 中文件的原始位置。 为了完成任务,我将文件重新定位到我的用户文件中,并尝试按照说明中的 rest 告诉我输入“git init”,然后输入“git add”。 这是我遇到“警告:无法打开目录”警告的地方。

我有一台在 OS X Maverick 上运行的 macbook。 我进入了我的系统首选项 > 安全和隐私并选择了全盘访问,在这里我手动允许终端访问我笔记本电脑上的所有文件。 但是,在关闭并重新打开 RStudio 并再次尝试命令后,我得到了同样的错误。

这是我尝试更改目录时输入的内容

Savannahs-MacBook-Air-2:~ savannahkeiffer$ cd ~ 
/Desktop/temporary_no_version_control

Savannahs-MacBook-Air-2:~ savannahkeiffer$ git init
Reinitialized existing Git repository in 
/Users/savannahkeiffer/.git/

当我更改笔记本电脑上的项目位置以完成任务时,我得到了什么(在已经授予终端访问权限之后)

Savannahs-MacBook-Air-2:~ savannahkeiffer$ cd ~ 
/Users/savannahkeiffer/first project/temporary_no_version_control

Savannahs-MacBook-Air-2:~ savannahkeiffer$ git init
Reinitialized existing Git repository in 
/Users/savannahkeiffer/.git/

Savannahs-MacBook-Air-2:~ savannahkeiffer$ git add .

warning: could not open directory 'Pictures/Photos 
Library.photoslibrary/': Operation not permitted

warning: could not open directory 'Library/Application 
Support/MobileSync/': Operation not permitted

warning: could not open directory 'Library/Application 
Support/CallHistoryTransactions/': Operation not permitted

warning: could not open directory 'Library/Application 
Support/com.apple.TCC/': Operation not permitted

warning: could not open directory 'Library/Application 
Support/AddressBook/': Operation not permitted

等等..这是目录问题还是“git add”。 命令问题?

看起来发生的事情就是当你输入cd命令时,你在波形符和路径的其余部分之间留下了一个空格,所以你改回了你的主目录(由代字号表示)。 然后,当您尝试执行git init ,您尝试将主目录初始化为Git存储库,然后遇到macOS限制某些程序(在您的情况下,不是终端,但可能仍然是Git)访问某些程序的事实目录。

在shell中,代字号只是拼写环境变量$HOME一种奇特方式,它指向您的主目录(在本例中为/Users/savannahkeiffer ),因此它应该紧跟在路径的其余部分之前,而不是空格之间。

在这种情况下,最好的做法是切换到项目目录,然后在那里初始化存储库:

cd ~/Desktop/temporary_no_version_control # note the lack of space after the tilde
git init

如果您不打算将您的主目录作为存储库(即,您没有将您的dotfiles存储在存储库中),那么您可能还希望通过运行rm -fr ~/.git从主目录中删除.git目录rm -fr ~/.git 键入此内容时要小心,因为rm会在没有提示的情况下删除数据,而不幸的空间可能会导致所有数据被删除。

在此处输入图像描述您好,这也是我遇到的问题,但在 Windows 中。 这是一个简单的修复,用户错误。 我有一段时间没有使用 gitbash,所以我忘记了使用 gitbash 工作的过程。 我犯的第一个错误是在打开 gitbash 后我直接执行了 git status 命令。 那是我收到“警告:无法打开目录”消息的时候。 您需要使用 cd(更改目录)命令和 dir(目录)命令导航到包含要“git add”的文件的文件夹。 和“git commit -m”。 进入该文件夹后,您将能够使用“git status”命令查看您的更改,然后正常进行。 我不得不发布这个,因为我花了几个小时才意识到我做错了什么。 没有其他堆栈帖子指出这个明显的用户错误。 希望它可以帮助你。

暂无
暂无

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

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