RE:從零開始將代碼通過Git部署到服務器


ZERO 大概流程

從托管平台克隆代碼到本地->將服務器的git進行配置->將本地代碼上傳到服務器->服務器進行檢查更新代碼

 

ONE 你首先得有個git的賬號


 

那么這個賬號可以有github,碼雲,還有coding,我選擇的是coding,國內的比較快,感覺又比較現代化

 

TWO 將coding的倉庫克隆到本地


 

1.在coding中創建好項目以及倉庫后,

2.要進行初始化,也就是弄個readme的文件出來,

3.復制倉庫地址,然后確保你的本地裝好了git,

4.通過git clone <你的地址> 這個命令,克隆我們在coding的倉庫.

5.將自己的代碼復制到clone下的文件夾中

6.將代碼提交到coding中

 

THREE 配置服務器端的Git


 

adduser git -m //添加一個名叫git的用戶,用於專門上傳代碼

passwd git //設置密碼

mkdir git_repository //在你需要得部署代碼的地方創建你的項目文件夾

chown git:git git_repository -R //將這個文件夾的所屬權限改成你剛創建的用戶 請注意:這里的git:git = 用戶名:用戶組

cd git_repository //進入這個文件夾

git init //初始化

git config receive.denyCurrentBranch ignore //接受文件

  

FOUR 配置本地的Git


 

 

git remote add server0 git@192.168.1.110:/home/git_repository/.git

其實上面也就是:

git remote add <主機名> <網址>

server0是自定的主機名,git是上文提到的專門用於提交代碼的服務器用戶,192.168.1.110是服務器IP,/home/git_repository就是服務器倉庫目錄。

 

 

git push server0 master

將我們的代碼上傳到遠程服務器

不過這個步驟可能會出現很多問題,.首先我第一個遇到的是服務器地址填寫錯誤,在ip 前面加上了http,通過通過 git remoteremove server0 來清除這個設置,然后進一步重寫

第二個問題是一直顯示我權限錯誤,我明明將所有文件賦予了權限,后來發現文件出在我把賦予權限的用戶名和用戶組寫反了 

chown git:git git_repository 前者是用戶名也就是所屬者,后者是所屬者的用戶組


FIVE 回到服務器中更新代碼


 這步操作萬萬不能省

 

git update-server-info

git checkout -f

 

運行上面兩個就可以看到代碼更新了,從你就放棄了陪你度過漫長時光的FTP,選擇了高大上的Git了.

 

如果你還不滿足希望能增自動帶更新代碼那么你還可以這樣做,

在你的文件下,

ls -A

cd .git/hooks

vim post-receive

注意這里回到最初的文件夾目錄中,將項目所有文件改變權限
chown git:git git_repository -R 

修改保存

#!/bin/sh

unset GIT_DIR
DeployPath="你的項目路徑"

echo "==============================================="
cd $DeployPath  #進入web項目目錄
echo "start"

git update-server-info

git checkout -f

time=`date`
echo "web server pull at webserver at time: $time."

可執行權限

chmod +x post-receive

 

 

 

 

 

感謝

參考文章:BENCJL的《Git簡單應用:部署代碼到服務器》https://blog.csdn.net/bencjl/article/details/53699684

參考文章:一大三千 的《在Linux服務器上搭建Git遠程倉庫並Push本地庫》https://blog.csdn.net/u011726984/article/details/52036654

 參考文章:GIT服務器端部署及自動拉取(服務器自動部署項目)_weixin_34419321的博客-CSDN博客


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM