我在主网络服务器和本地git仓库上有一个回购。那么我在本地机器上更改了一些文件,我将它提交到本地仓库,然后推送到Web服务器上的远程仓库。但是,Web服务器上的工作目录中的文件不会更改。现在我使用命令" git reset --hard"但我认为这是不对的。那么如何应用从本地仓库更改为工作目录?
答案 0 :(得分:0)
当您运行git push
时,只会更改远程存储库中的存储库,而远程工作树不会更改,这就是git init --bare
通常创建远程存储库的原因。
如果要通过git push
更新远程工作树,则应编写一个post-receive挂钩来执行此操作。
答案 1 :(得分:0)
进入.git / hooks目录并创建一个名为“post-receive”的文件。将以下代码复制到文件中:
GIT_WORK_TREE = / path / to / your / htdocs / direcotry git checkout -f
确保此代码可以通过运行来执行 chmod + x .git / hooks / post-receive
答案 2 :(得分:0)
我在GIT v.2.3.0中发现了一个很好的功能+ - 推送部署。
所以你需要配置git: git config receive.denyCurrentBranch updateInstead