一、登陸linux服務器html
二、sudo apt-get install git
linux
sudo apt-get install ssh
git
三、服務器建立一個用戶名爲ceshi的用戶shell
sudo adduser ceshivim
四、按照提示建立完畢後,進入剛建立好的ceshi文件夾下,目錄在/home/ceshi/,進入這個目錄bash
cd /home/ceshi服務器
建立.ssh文件夾ssh
mkdir .sshide
五、進入.ssh文件夾post
cd .ssh
touch authorized_keys
六、在客戶端打開Git Bash,執行:
ssh-keygen -t rsa
按提示輸入用戶名:ceshi
完成後,會生成2個文件: ceshi和ceshi.pub,分別是私鑰和公鑰
七、cd ~
pwd
查看當前客戶端的工做目錄,找到工做目錄下的.ssh文件夾,把私鑰複製到這個文件夾下
八、若是是第一次搭建,還要新建一個config的文件,並寫入如下內容:
host git-server user server hostname 119.29.147.xxx port 22 identityfile ~/.ssh/Mike
九、服務器將公鑰追加到服務器的authorized_keys文件中
vim authorized_keys
以後esc
:wq保存退出
十、進入用戶文件夾下
cd /home/ceshi
建立一個文件夾text
mkdir test
進入這個文件夾
cd test
git init --bare test.git
十一、在客戶端clone遠程的代碼倉庫
git clone git-server:/home/ceshi/test/test.git
十二、會在gitclient/test/下建立一個名爲test的文件夾(.git會被省略)。
咱們能夠作一個測試,在gitclient/test/test文件夾中添加一個文件,並提交。
git push git-ceshi:/home/ceshi/test/test.git master
1三、若是報錯,通常是權限問題,去服務器端git庫目錄下,也就是test文件夾下,而後輸入命令
sudo chown -R cl90326:cl90326 test.git
1四、git push git-ceshi:/home/ceshi/test/test.git master
成功!
1五、將git服務器內容同步到項目服務器上
cd /home/ceshi/ceshi.git
cd hooks //這裏咱們建立post-receive文件
vim post-receive //在該文件裏輸入如下內容
#!/bin/bash git --work-tree=/var/www/html/git checkout -f
//保存退出後,將該文件用戶及用戶組都設置成git
chown cl90326:cl90326 post-receive
//因爲該文件其實就是一個shell文件,咱們還應該爲其設置可執行權限
chmod +x post-receive
chown -R cl90326:cl90326 /var/www/html/git/