您的位置:首页 > 编程语言

Git服务器搭建+上传代码

2015-08-22 20:42 197 查看

git服务器搭建+上传代码

git服务器搭建

下载git

apt-get install git         //ubuntu


创建git专用用户

sudo adduser git


创建登陆证书

将所有登陆用户的id_rsa.pub中的公钥放入/home/git/.ssh/authorized_keys文件内,一行一个。

创建一个仓库

git init--bare myrepo.git


裸仓库中包含了.git仓库的大部分内容,但是这只个记录记录的目录,并不对文件进行保存。不过这里我用了普通的仓库。

git init


修改文件权限

将/etc/passwd中的

git:x:1001:1001:,,,:/home/git:/bin/bash

修改为

git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell

客户端上传代码

clone

git clone git@serverIP:/REPO_PATH/


git hooks

其实写到这里会有一个问题,这里能clone下来,但是当git push时,会遇到服务器端只有log改变,但是没有合并到主分支中。必须要用git reset –herd回退才行。所以我查阅了资料之后用git自己的hooks进行触发接收事件:post-reveive。

#!/bin/sh
unset $(git rev-parse --local-env-vars)
cd /DESTINATION_PATH/
/usr/bin/git reset --hard


这里其实还会碰到一个问题,如果在shell脚本中直接写:

cd /DESTINATION_PATH/
/usr/bin/git reset --hard


是会无法达到效果的,因为其实git操作会有GIT_DIR环境路径的,所以需要unset去除环境变量。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: