2011-04-21 74 views
9

我试图确定为什么网站上的某个功能在本地工作,但不是远程工作,所以我的想法是下载远程站点并执行git diff以便发现任何差异。从服务器导入更改后出现GIT错误

因为我这样做,但是,所有GIT命令会见了:

fatal: Unable to read current working directory 

有我杀了我的回购?这是可逆的吗?

+2

通常情况下,当您在不存在的目录内发出'git'命令时会发生这种情况。你确定你没有删除/重新命名你的回购目录。 – 2011-04-21 10:52:24

+1

多么奇怪,文件夹结构是相同的,但是因为它已被覆盖(使用远程版本进行回购(作为站点的一部分存在,而不是整体)),我只是将其重新CD入文件夹,并且没有问题。虽然,我的计划最终失败了,因为它报告的文件没有变化,并且未跟踪的文件应该被跟踪的变化! – 2011-04-21 10:57:28

+0

'下载远程站点'?我想这是用非Git的东西...比如'rsync -hxDPavilyz -H --stats --delete或者'wget --nh --np --mirror'?在这两种情况下,请仔细阅读所有选项,特别是使用wget re:'robots.txt' – sehe 2011-04-21 11:39:23

回答

8

在你的shell问题

cd "$PWD" 

我的猜测是不存在/已重建。这也会发生悬挂符号链接。

否则,撤退到更高的地方。请注意,取决于你的shell cd ..将或不会工作(如果壳优化它,知道CWD,它可能工作,否则你会赶上22:壳不能查找索引节点.. :))

+1

另外,简单的'cd .'对我有效 – crollywood 2017-01-05 14:43:59

+0

这应该严格地不起作用@crollywood,因为'.'是一个硬链接到旧目录。它/可能是bash或其他shell有一个“更聪明”的行为,因为'cd'将是一个内置的命令 – sehe 2017-01-05 17:54:58

+0

你可能是正确的@sehe,因为我确实使用bash,但不过,它确实为我工作:) – crollywood 2017-01-05 19:12:46

17

我遇到过这个问题几次。听起来很愚蠢,关闭终端窗口(或SSH会话)并打开一个新窗口解决了这个问题。

+0

^------^ 这就是它 – tylerlindell 2015-11-08 05:57:07

+0

它也适用于我。任何解释? – 2016-10-21 14:25:24

+1

当您在branch2中不存在的目录内执行'git checkout branch2'时,可能会发生这种情况。在这种情况下,问题可以通过离开目录来解决。 – 2017-04-04 16:26:52

相关问题