這是一個循序漸進的教程,教您如何利用git將網站部署到遠程服務器。它將指導您完成每個步驟。熟悉Git和Linux Shell是一個加分,但不是強制性的。
工作
1.登錄到服務器
使用以下命令打開終端並登錄到服務器:
ssh your_user@server_ip_address
- 將server_ip_address替換為服務器的實際IP地址。
- 用實際的用戶名替換your_user。默認情況下,用戶名與主機相同,除非您指定其他代理。
輸入您的密碼,然後…您現在已登錄到服務器。
2.安裝GIT
要在您的服務器上安裝git,請一次將以下命令複製到終端,然後單擊Return
。如果出現提示,請輸入密碼。
sudo apt-get更新 sudo apt-get安裝git
3.為您的代碼創建一個文件夾
您網站的源代碼需要放在某個地方。按照慣例,代碼位於/var/www
目錄內。使用以下內容導航到那裡:
cd / var / www
現在,創建一個新文件夾以放置源代碼。在本教程中,它將被稱為website_folder。
mkdir website_folder
現在,放置源代碼的完整路徑是/var/www/website_folder/
。記住此路徑很重要,因為在設置git存儲庫時將需要它。
4.在服務器上初始化一個git倉庫
git存儲庫需要一個文件夾來託管它。一個好的做法是調用該文件夾website_name.git。在中/var
,創建一個名為repo的文件夾,其中 將包含您的git存儲庫。其中之一將是website.git。為此,請運行以下命令:
mkdir -p /var/repo/website.git
現在,瀏覽/var/repo/website.git
並初始化git存儲庫:
cd /var/repo/website.git/ git init --bare
Voilà…現在,您有了一個可供共享的裸倉庫。
5.創建掛鉤
一個掛鉤是一個程序,你可以在一個鉤子目錄的地方觸發混帳的執行在某些點的動作。
Git有多個掛鉤,可以在不同階段之後自動調用。您將使用存儲庫收到推送代碼後調用的post-receive掛鉤。
初始化git儲存庫後,新文件夾應顯示在中/var/repo/website.git/
。導航到鉤子,並使用您喜歡的文本編輯器創建一個名為post-receive的新bash。
cd鉤子 納米後接收
在新創建的文件內部,您需要告訴git將文件推送到何處。為此,請粘貼以下代碼:
#!/ bin / sh
git --work-tree = path_to_website_folder --git-dir = path_to_git_directory簽出-f name_of_branch
- 用我們在第3點中創建的正確路徑替換path_to_website_folder
/var/www/website_folder
。 - 用裸git存儲庫的路徑替換path_to_git_directory,在本例中為
/var/repo/website.git
。 - name_of_branch是可選參數。如果未指定,則默認為
master
。
您可以在腳本中選擇其他任何命令,例如重新啟動服務器。
使用退出編輯器ctrl+x
,並確保將文件另存為post-receive。
6.使腳本可執行
為了使操作系統執行腳本,後者需要具有可執行權限。為此,請運行以下命令:
chmod + x接收後
服務器上的工作已完成。現在,您只需運行logout
並點擊即可註銷Return
7.將本地代碼推送到服務器
從您的終端,導航到您的本地文件夾,如果它還不是可以正常使用的git存儲庫,請將其初始化為一個。然後,為了配置git將代碼推送到遠程服務器,您需要將其指向其地址。
git初始化
git remote add name_of_repository ssh://您的用戶@ server_ip_address/
path_to_git_directory
- name_of_repository可以是您想要的任何名稱。它是遠程存儲庫的名稱。
- 將server_ip_address替換為服務器的實際IP地址。
- 用實際的用戶名替換your_user。默認情況下,用戶名是root。
- 用裸git存儲庫的路徑替換path_to_git_directory,在本例中為
var/repo/website.git/
。
現在,要將代碼推送到遠程服務器,只需在本地git存儲庫內部運行以下命令:
git push name_of_repository name_of_branch
輸入密碼,現在您的代碼已經生效,可以在以下位置找到 /var/www/website_folder