我希望我的混帳回購協議是從我的工作目錄中一個單獨的目錄,所以我用下面的命令做了回購:不能反映git的工作目錄更改
$ cd mysite.git/
$ git init --bare
Initialized empty Git repository in /home/git/mysite.git
$ git config core.bare false
$ git config core.worktree /home/mysite/public_html
$ git config receive.denycurrentbranch ignore
$ cat > hooks/post-receive
#!/bin/sh
export GIT_DIR=/home/git/mysite.git
export GIT_WORK_TREE=/home/mysite/public_html
git checkout -f
^D
$ chmod +x hooks/post-receive
我似乎能夠推動和從回購沒有錯誤,但工作目錄並不反映推送的變化。
如果我做
$ git status
它表明我的變化COMMITED,但後來從工作目錄中刪除。
這個配置直到最近都在爲我的團隊工作,而且我不確定如何追查可能發生的變化。我確定文件權限似乎是正確的。我不知道還有什麼要檢查。
有人能幫我找出爲什麼我的配置導致工作目錄不能反映提交的更改嗎?
我試圖在http://caiustheory.com/automatically-deploying-website-from-remote-git-repository/ 通過類似的建議遠程混帳回購協議,以建立一個網站的自動部署 是它如果不將初始化倉庫初始化爲裸露,可以將git倉庫放在與工作目錄不同的目錄中?我還需要推送到回購站來自動提交更改並更新工作目錄。 – phaonica 2015-02-24 00:22:38
推入回購並不會改變任何工作目錄。但是你可以做你想要的一部分。要將git-dir從工作樹中分離出來,請使用'--separate-git-dir'。 –
cdunn2001
2015-02-24 01:50:13