赞
踩
服务器环境:阿里云服务器centos,lnmp
1、首先参照菜鸟教程中git教程安装git,网址:http://www.runoob.com/git/git-remote-repo.html
2、搭建git远程仓库:
$ yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel $ yum install git
接下来我们 创建一个git用户组和用户,用来运行git服务:
$ groupadd git $ adduser git -g git
首先我们选定一个目录作为Git仓库,假定是/home/gitrepo/runoob.git,在/home/gitrepo目录下输入命令:
$ cd /home $ mkdir gitrepo $ chown git:git gitrepo/ $ cd gitrepo $ git init --bare runoob.git //注意要加 --bare Initialized empty Git repository in /home/gitrepo/runoob.git/
$ git clone git@192.168.45.4:/home/gitrepo/runoob.git Cloning into 'runoob'... warning: You appear to have cloned an empty repository. Checking connectivity... done.
设置好git远程仓库之后,设置该仓库的所属用户和组为git用户,chown -R git:git /home/runoob,git
在远程仓库runoob.git/hooks/新建post-receive,加入如下脚本:
#!/bin/sh
git --work-tree=/home/wwwroot/basic --git-dir=/home/warehouse/myyii.git checkout -f
前边为web目录路径,后边为仓库路径,改为自己的路径。 并给脚本添加可执行权限:chmod +x /home/runoob.git/hooks/post-receive
然后要保证git用户对web目录下的文件有写权限,所以要把git用户加入到web用户组中。这里我使用的lnmp一键安装包搭建的环境,web目录用户是www用户。
执行命令:usermod -a -G www git
这样在执行git的push操作时会自动调用hooks中的文件。将代码自动发布到web目录。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。