要求
實現git push
直接完成代碼部署到服務器的目錄
本地創建git倉庫
git init
提交一個版本
git commit -m "v1"
遠程部署
遠程服務器上安裝git,並初始化一個倉庫
git init --bare controlServ.git
本地向遠程倉庫push一個版本
git remote add origin [email protected]:/cangKu/controlServ.git
測試更新操作:
563 touch index.php
564 git add index.php
565 git commit -m "test"
566 git push
567 git push --set-upstream origin master
要求輸入密碼,輸入userName的密碼即可。然後在服務器上就可以看到push過來的代碼了。
注意點
- 如果我們沒有配置
ssh免密碼登陸
的話,我們需要在push
代碼的時候輸入密碼 - 如果我們添加的遠程倉庫不是
[email protected]
,例如是[email protected]
,那麼我們要確保abc
用戶對wx.git
目錄下的文件有777
權限。
新增倉庫
- 需要登陸遠程服務器進行初始化
repo_name.git
倉庫 - 需要手動創建
public/repo_name
文件夾,並且修改權限爲777 - 需要重新編寫
hooks/post-recieve
文件,修改裏面的DIR路徑爲public/repo_name
fetch和pull:
fetch 只能更新遠程倉庫的代碼爲最新的,本地倉庫的代碼還未被更新,我們需要通過 git merge origin/master 來合併這兩個版本,你可以把它理解爲合併分支一樣的。就是先把代碼拉下來,然後手動更新需要指定的文件。
pull 操作是將本地倉庫和遠程倉庫(本地的)更新到遠程的最新版本。
如果想要更加可控一點的話推薦使用fetch + merge。