我在Ubuntu Linux下使用Git来同步和部署我的项目.
我在我的本地Linux工作机器上有Repo,在我的服务器上有两个repos,一个裸仓库和一个部署应用程序.
它总是工作正常,但现在我为我的其他网站创建了另一个回购,现在我收到此错误:
root@vserver5:/var/www/ninethsky# git pull origin master
fatal: /usr/lib/git-core/git-pull cannot be used without a working tree.
Run Code Online (Sandbox Code Playgroud)
所以我必须设置一个GIT_WORKING_TREE ENV-Var,但究竟是什么,在哪里设置呢?
这是我的repo的.git/config:
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
[remote "origin"]
url = /home/git/ninethsky/.git
fetch = +refs/heads/*:refs/remotes/origin/*
Run Code Online (Sandbox Code Playgroud)
bare = true在我当地的工作机器上有另一个回购和回购.
然后我删除了所有的回购,但最初的回购,现在我得到:
root@vserver5:/var/www/ninethsky# git init
fatal: GIT_WORK_TREE (or --work-tree=<directory>) not allowed without specifying GIT_DIR (or --git-dir=<directory>)
root@vserver5:/var/www/ninethsky# git init --git-dir=/var/www/ninethsky
error: unknown option `git-dir=/var/www/ninethsky'
Run Code Online (Sandbox Code Playgroud)
我git init通过取消设置为空白的GIT_WORK_TREE 解决了这个问题.GIT_WORK_TREE和GIT_DIR未设置.git init再次工作,仍然有一个问题,git add . …
我安装我的Plesk网站所描述的通过后钩自动拉从远程仓库更改Web服务器的某个路径这里。
但是,我的存储库包含一个 git 子模块,我还需要运行自定义命令git submodule update --remote。我怎么能告诉 plesk 这样做。我可以输入的命令
启用其他部署操作
设置似乎没有在正确的路径中执行。此外,当我转到存储库在我的服务器上同步到的路径时,我得到:
fatal: Not a git repository (or any of the parent directories): .git
我怎样才能告诉 plesk 也使用 git 插件更新子模块?