当我从仓库中
git clone
时,我得到,
fatal: Could not get current working directory: No such file or directory
我该怎么办?我检查了服务器,发现
.git
文件存在。服务器正在运行 Gitlab 实例。我已经使用密钥正确配置了ssh
,并且我已经提交和克隆了一段时间,没有任何错误,而且这种情况突然发生。
FWIW,我正在 bash 脚本中执行
git clone
。
更新
这是我的 bash 脚本,
for repo in $repos
do
git clone $repo /tmp/tmpdir/
# do stuff with /tmp/tmpdir/
rm -rf /tmp/tmpdir/
done
对于第一个
repo
没问题,但是当 for
进入第二个 repo
时,它会失败并给出上述 fatal
错误。
我的猜测是,在您的
do stuff
部分中的某个位置,您将目录更改为 /tmp/tmpdir/
,以便在下一个循环中,当前工作目录不再存在。修复方法是在删除 /tmp/
目录之前将目录更改为 /tmp/tmdir/
(或任何其他地方)。
就我而言,这是由从现有 git 存储库的子目录发出“git 克隆”引起的。在克隆新的存储库之前,我必须先在现有的存储库之外进行 cd。