-------------------------
ubutu11.04上搭建git服务器
-------------------------
本文主要是git配合SSH来实现代码管理
-----------------------------------------
安装SSH
-----------------------------------------
1:先下载更像一下源
sudo apt-get update
//服务器PC运行
sudo apt-get upgrade
//服务器PC运行
2:安装SSH服务器端
sudo apt-get install openssh-server
//服务器PC运行
安装后在终端中,输入命令:
ps -e |grep ssh
ssh-server是否已启动。
一般系统都自带了ssh客户端
在终端中,输入命令:
dpkg -l | grep ssh
可查看时候有ssh-client
如果没有安装,则安装SSH客户端
sudo apt-get install openssh-client
//ssh客户端,用户PC 服务器PC 管理员PC都需要安装
3:服务器PC配置ssh(有些配置应该没必要、未验证)
vim /etc/ssh/sshd_config
port 22 # 修改成你想要的登陆端口,如2222
PermitRootLogin no # 禁止root用户登陆
StrictModes yes # 检查密钥的用户和权限是否正确,默认打开的
RSAAuthentication yes # 启用 RSA 认证
PubkeyAuthentication yes # 启用公钥认证
PasswordAuthentication no # 禁止密码认证,默认是打开的
ServerKeyBits 1024 # 修改后变为此状态,将ServerKey强度改为1024比特
PermitEmptyPasswords no # 修改后变为此状态,禁止空密码进行登录
//我选择默认设置如果你有做修改的话,请重启SSH
sudo /etc/init.d/ssh restart
----------------------------------------------
安装GIT & gitosis
----------------------------------------------
git安装
sudo apt-get install git-core
gitosis安装
mkdir gitosis_setup
cd ~/ gitosis_setup
git clone git://eagain.net/gitosis
cd
sudo python setup.py install
//如果运行错误就安装
sudo apt-get install python-setuptools.py
//如果提示这个找不到就到python的官网下载ez_setup.gz安装
下载地址:
http://pypi.python.org/pypi/ez_setup#downloads
下载安装后再在gitosis目录下重新安装
sudo python setup.py install
//GIT & gitosis是在安装服务器PC,管理员PC和用户PC只需要安装git-core
----------------------------------------------
服务器PC上建立git用户
----------------------------------------------
sudo adduser --system --shell /bin/sh --gecos 'git version control' --group --disabled-password --home /home/git git
建立后运行命令设在密码:
sudo passwd git
---------------------------------------------
生成生成公钥,并生成管理员账户
---------------------------------------------
ssh-keygen -t rsa
//管理员PC运行
将生成的文件拷贝到服务器PC的/home/git目录下,用U盘拷贝吧!本来有个SCP命令可以搞定的,但是我执行不其作用的,没想法!
在/home/git目录下运行
sudo chmod 777 ****.pub
//服务器PC运行
sudo -H -u git gitosis-init < ****.pub
//服务器PC运行
然后生成管理员账户
sudo chmod 755 /home/git/repositories/gitosis-admin.git/hooks/post-update
//服务器PC运行
//现在git已经搭建好了,(*^__^*) 嘻嘻……!
---------------------------------------------
新建仓库,初始化仓库
---------------------------------------------
服务器PC上新建目录
/home/git/git_repo/mt6573.git
运行命令初始化仓库
git --bare init
--------------------------------------------
clone代码并提交
--------------------------------------------
管理员PC上运行
git clone git@服务器IP:/home/git/git_repo/mt6573.git android_code
//现在如果服务器的mt6573.git目录没有放文件的话,现在拉下来的目录为空
你可以拷贝文件到此目录下
git add ****
//添加文件
git commit –a
//填写log信息
git push origin master
//由于此仓库为第一个,则设为主线,以后再使用git push提交即可
----------------------------------------------
扩展设置
提交代码前先配置个人信息:
git config --global user.name xxxx
git config --global user.email
[email protected]
----------------------------------------------