linux遠程服務器配置git版本控制

一、登陸linux服務器html

二、sudo apt-get install git linux

   sudo apt-get install sshgit

三、服務器建立一個用戶名爲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
  • 注意除第一行,其他要縮進一個tab
  • 這裏的Mike替換爲本身以前建立key時輸入的用戶名
  • hostname 後面替換爲你的服務器IP地址

九、服務器將公鑰追加到服務器的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/

相關文章
相關標籤/搜索