git server 安裝配置1、切換到root用戶stevenrao@server:~$ su - root 2、創(chuàng)建git組root@server:~$ groupadd git root@server:~$ groupadd user 3、添加git賬戶root@server:~$ useradd git -g git -m -s /bin/bash root@server:~$ usermod -G git,user git #把git同時(shí)加入git組和user組 root@server:~$ passwd git #設(shè)置密碼 4、添加到sudoers用戶中去,盡量不要用root操作root@server:~$ vim /etc/sudoers #加上下面一句 git ALL=(ALL:ALL) ALL root@server:~$ su - git #切換到git用戶下工作 5、安裝3個(gè)軟件包git@server:~$ sudo apt-get install git git-core ssh 6、建立一個(gè)空白倉(cāng)庫(kù)git@server:~$ mkdir project.git git@server:~$ cd project.git git@server:~/project.git$ git --bare init Initialized empty Git repository in /home/git/project.git/ 7、再添加幾個(gè)賬戶, 本樣例賬戶為stevenraogit@server:~/project.git$ cd ~ git@server:~$ sudo useradd stevenrao -g user -m -s /bin/bash git@server:~$ sudo usermod -G git,user stevenrao #把stevenrao同時(shí)加入git組和user組 git@server:~$ sudo passwd stevenrao #設(shè)置密碼 8、配置stevenrao用戶秘鑰(秘鑰生成參考后面git client 配置中的2,3步驟)git@server:~$ mkdir /home/git/.ssh git@server:~$ vim /home/git/.ssh/authorized_keys sh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAp1s5dDRyMeY7q6mRlQz5DbfKC/Ebtl5/gdanOaASjnNtJPULuTyVIj3UmYzZFVaVO+3yC31+cQTGWp2bXzKEuXqIUxhygvOCr+vwfRK8FrpXOLLF5WWQYd6UgpV6/6mgRPuVVDa39zqGwKEVBgoIpiVYRBSIywbO0Qf9SGQV4CevEny8aGTZCE/UHq19ec5w9jrsvij5zt xyFlvfjIaDOb8F/b3IqZ1v5PB5UHiJaZqE0xjxFiA6wtlprkrNOQKyBI44MCjw8P964+ED+w2I4n8TisCyok5FGBn66HzdBV59166NZfP+4CFScO8hDXpUnWPvpgjhtWUQeYCMLUp5eQ== stevenrao@ubuntu 9、配置git configgit@server:~/project.git$ vim /home/git/project.git/config [core] repositoryformatversion = 0 filemode = true bare = true (添加下面兩行) [receive] denyCurrentBranch = ignore 10、重啟ssh服務(wù)git@server:~$ /etc/init.d/ssh restart git client 配置 (在另一臺(tái)電腦上)1、安裝3個(gè)軟件包root@client:~$ sudo apt-get install git git-core ssh 1、添加用戶root@client:~$ useradd stevenrao -g user -m -s /bin/bash root@client:~$ passwd stevenrao #設(shè)置密碼 root@client:~$ su -u stevenrao #切換當(dāng)前用戶 2、添加git秘鑰stevenrao@client:~$ ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/stevenrao/.ssh/id_rsa): (直接回車) Created directory '/home/stevenrao/.ssh'. Enter passphrase (empty for no passphrase): (輸入密碼) Enter same passphrase again: (再次確認(rèn)密碼) Your identification has been saved in /home/stevenrao/.ssh/id_rsa. Your public key has been saved in /home/stevenrao/.ssh/id_rsa.pub. The key fingerprint is: e8:6a:dd:2d:34:57:44:a5:61:65:75:c4:89:f2:f6:e4 stevenrao@client The key's randomart image is: +--[ RSA 2048]----+ | .+o=+=| | o.= .o| | .+ | | . .o . | | . S .. + | | . o . E | | ..o + | | ... o . | | .. . | +-----------------+ stevenrao@client:~$ ls -al .ssh/ total 16 drwx------ 2 stevenrao user 4096 2014-09-28 06:51 . drwxr-xr-x 3 stevenrao user 4096 2014-09-28 06:50 .. -rw------- 1 stevenrao user 1751 2014-09-28 06:51 id_rsa -rw-r--r-- 1 stevenrao user 398 2014-09-28 06:51 id_rsa.pub 2、查看公鑰stevenrao@client:~$ cat .ssh/id_rsa.pub ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAp1s5dDRyMeY7q6mRlQz5DbfKC/Ebtl5/gdanOaASjnNtJPULuTyVIj3UmYzZFVaVO+3yC31+cQTGWp2bXzKEuXqIUxhygvOCr+vwfRK8FrpXOLLF5WWQYd6UgpV6/6mgRPuVVDa39zqGwKEVBgoIpiVYRBSIywbO0Qf9SGQV4CevEny8aGTZCE/UHq19ec5w9jrsvij5ztxyFlvfjIaDOb8F/b3IqZ1v5PB5UHiJaZqE0xjxFiA6wtlprkrNOQKyBI44MCjw8P964+ED+w2I4n8TisCyok5FGBn66HzdBV59166NZfP+4CFScO8hDXpUnWPvpgjhtWUQeYCMLUp5eQ== stevenrao@client 3、初始化,添加test.txt文件到git倉(cāng)庫(kù)中去stevenrao@client:~$ mkdir /home/stevenrao/test_proj stevenrao@client:~$ cd /home/stevenrao/test_proj stevenrao@client:~/test_proj$ echo "test git by stevenrao v1.0" > test.txt stevenrao@client:~/test_proj$ git init Initialized empty Git repository in /home/stevenrao/test_proj/.git/ stevenrao@client:~/test_proj$ git add . stevenrao@client:~/test_proj$ git commit -m 'initial commit' stevenrao@client:~/test_proj$ git remote add origin stevenrao@172.19.44.7:/home/git/project.git stevenrao@client:~/test_proj$ git push origin master stevenrao@client:~/test_proj$ git push origin master 4、配置客戶端操作賬戶stevenrao@client:~$ git config --global user.name "stevenrao" stevenrao@client:~$ git config --global user.email "stevenrao@qq.com" 5、修改繼續(xù)提交stevenrao@client:~/test_proj$ vim test.txt test git by stevenrao v1.1 stevenrao@client:~/test_proj$ git commit -m "1.1" test.txt stevenrao@client:~/test_proj$ git push |
|
|