|
git 配置服务器 & 添加用户
===========================
友情链接:Github : http://www.cnblogs.com/TS-qrt/articles/git.html
Git分支:http://www.cnblogs.com/TS-qrt/articles/linux_gitfenzhi.html
零. 说明
1/ 项目代码文件是以二进制到形式存放在服务器的,所以服务找不到项目代码
一. 创建服务器
1. (服务器) 检测电脑上是否有git用户,没有则新建
root@localhost #>
root@localhost # useradd git
root@localhost # passwd git
2. (服务器) 切换到git用户 & 创建git仓库
git@localhost $ su git
git@localhost $ mkdir mkdir gitserver
//git服务器目录
git@localhost $ cd gitserver/
git@localhost $ mkdir test.git
git@localhost $ git init --bare test.git //git服务器配置
git@localhost $ chown -R git:git test.git/ //指定文件的拥有者改为指定的用户或组
二. 克隆git仓库
1. (客户机) 切换test用户 (因为本次操作客户机和服务器是同一部电脑的缘故)
git@localhost $ su test //pwd: test
ps:如果是不同电脑,直接在电脑上执行第2步即可
2. (客户机) 克隆服务器git项目仓库
test@localhost $ git clone git@127.0.0.1:~/gitserver/test.git
三. 配置客户机操作git仓库权限(关键)
1. (客户机) 客户机生成公钥和私钥
test@localhost $ ssh-keygen -t rsa
ps: 在test用户到~目录下生成".ssh"目录, 如下:
test@localhost:~/.ssh$ ls
id_rsa >
2. (客户机) 拷贝上面生成的id_rsa.pub文件到服务器电脑,因为是服务器,客户机同一部电脑,随便操作:cp 或直接拖拉文件
ps: 如果是不同电脑,可以通过ssh传输文件:
scp>
3. (服务器) 将id_rsa.pub内容写入服务器机git用户的"~/.ssh/authorized_keys"文件中
cat>
ps: 如果服务器git用户没有"~/.ssh"目录,可使用以下命令生成,道理同上
git@localhost $ ssh-keygen -t rsa
四. 客户机设置git项目远程源
1. (客户机) 设置git项目远程源
git remote add origin git@127.0.0.1:~/gitserver/test.git
git pull
--rebase origin master
git push
-u origin master
五. 多台电脑,可以从第二步开始为git项目添加操作用户
WARN:
===================================
1. question: 如果在同一台电脑创建多个git客户机, 其他非登录用户机无法打开图形界面,解决方法:
http://www.cnblogs.com/TS-qrt/articles/linux_w.html 的 2. Ubuntu不允许登录用户以外到用户调用图形界面
OTHERS
===================================
如果还配置了gerrit,需注意一下几点
1. vim /etc/hosts
gerrit服务器会绑定电脑上的host, 文件如下
... ...
#
127.0.0.1 localhost127.0.0.1 xxxxxx //红色修改部分
... ...
2. vim /etc/hostname
xxxxxx // 同上面红色修改部分
3. vim ~/.gitconfig
[user] name
= xxxxxx //同上面红色部分 email = xxx@xxx.com
4. vim ~/.bashrc
... ...
export gerrit_username
="xxxxxx" // 同上面红色部分
export gerrit_reviewer="laodayouxiang@xxx.com"
5. 复制~/.ssh/id_rsa.pub的内容到
~/.ssh/id_rsa.pub
My -> Groups -> SSH Public Keys -> Add Key //直接复制粘贴即可
---------- THE END |
|
|