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