Capistrano DigitalOcean Ubuntu 14.04 致命:不是 git 存储库(或任何父目录)。git

Capistrano DigitalOcean Ubuntu 14.04 fatal: Not a git repository (or any of the parent directories) .git

我有一个我正在开发的应用程序,我没有设置它,我也没有与开发人员进行通信。我过去曾努力做到这一点,但今天由于某种原因我无法做到。 Rails 4 个使用 Capistrano。当我查看服务器上的应用程序目录时,我可以找到 .gitignore 但没有 .git 文件夹。我做了一个“git init && git remote add git_ssh_url”,但它没有用。我正在考虑 git 克隆,但我不知道这会对应用程序产生什么影响。公司每天都在使用该应用程序,我敢肯定他们不会喜欢我把它搞砸的:) 我很茫然,任何帮助表示赞赏。

**

** 所以我意识到在同一个液滴上也设置了一个登台服务器,并且部署到每个的代码几乎相同。我在更新登台服务器时没有遇到任何问题

这是错误代码:

refreshing local cache to revision 4ea064e4826a9880c6bac3e0a2689b688e223911 at /var/folders/qb/6fdgzljs1r9ddgkvqk1ky0y40000gn/T/mpm
        executing locally: cd /var/folders/qb/6fdgzljs1r9ddgkvqk1ky0y40000gn/T/mpm && git fetch -q origin && git fetch --tags -q origin && git reset -q --hard 4ea064e4826a9880c6bac3e0a2689b688e223911 && git clean -q -d -x -f
    fatal: Not a git repository (or any of the parent directories): .git
        command finished in 9ms
    shell command failed with return code pid 97172 exit 128

所以我在询问朋友时遇到的解决方案是 capistrano 在此处本地创建的临时缓存文件(此路径是从我上面发布的错误中提取的):

/var/folders/qb/6fdgzljs1r9ddgkvqk1ky0y40000gn/T/mpm

正在抛出错误。在某个时候,肯定有一个中断的部署弄乱了那个文件。当我 ls -la 上面的 mpm 文件时,有一个 .git 文件,但由于某种原因无法识别它。

解决方案是

rm -rf /var/folders/qb/6fdgzljs1r9ddgkvqk1ky0y40000gn/T/mpm

并重新运行 cap production deploy 命令,它会重建临时缓存文件并部署代码。

希望这对某人有所帮助!