自己搭建的Git服务器私有库,测试完毕,可以正常使用![如何搭建自己的Git服务器]
既然可以正常clone、add、commit、push到远程git服务器,那么成功了,也不能及时看到效果。故想到,
Git和SVN应该都有【钩子】hooks机制,[svn如何实现版本库文件和web目录实时同步 ],来利用shell 脚本去自动同步,将提交到版本库的文件自动同步到www目录指定的文件夹下,
从而,可以实现,实时提交,实时查看效果!
具体步骤:
1、已经搭建好git远端服务器,可以正常使用的前提下 2、在web目录下,新建一个gitdemo目录 $ mkdir /www/gitdemo 3、找到在创建git服务器时候,你自己设置的仓库:/data/git/gitdemo.git 4、设置钩子 cd hooks vim post-receive 编辑模式输入: #!/bin/bash git --work-tree=/home/www/gitdemo checkout -f 5、保存退出后,将该文件用户及用户组都设置成git chown git:git post-receive 6、给这个shell文件可执行权限 chmod +x post-receive 钩子已经设置完毕!
去git客户端进行测试,push成功后,但是在/www/gitdemo/目录下没有发现你推送的文件,那么就是由于文件夹的权限的原因造成的!
假设你的web目录www的所属组是root(www)
1)你可以将你的git用户加入这个组,并给git添加写入权限。
2)你还可以直接将这个文件的所属改为git,chown git:git /www/gitdemo/
原创文章,转载请注明: 转载自HSBLOG
本文链接地址: Git推送到服务器后自动同步到站点目录www