2017-05-10 57 views
-1

我用下面的命令在nginxubuntu服務器自動化Git命令,每次

cd /opt/app/ 
sudo git fetch --all 
sudo git reset --hard origin/master 
sudo npm install 
pm2 start npm -- start 

對於sudo git fetch --all更新我的申請,我需要輸入我的github用戶名+密碼不用輸入用戶名+密碼和有時候是我的ubuntu帳戶的密碼。

有沒有人知道是否有可能實現自動化?我不想每次都輸入這些信息。

編輯1:爲了記錄在案,我做了以下步驟:

ssh-keygen -t rsa -b 4096 -C "[email protected]" 

它不產生~/.ssh/id_rsa~/.ssh/id_rsa.pub。然後

eval `ssh-agent` 
ssh-add 
kill $SSH_AGENT_PID 

於是,我做了less ~/.ssh/id_rsa.pub和複製內容,做this到github上。

然後,我重新進入服務器,現在sudo git fetch --all不需要用戶名+密碼。

+3

我想你可以嘗試建立SSH證書。 – eftshift0

回答

2

您可以使用SSH密鑰和SSH從不再次輸入憑據。只要看看Github help

你也可以把這個配置緩存在Git中你的Github的HTTP憑據:

git config --global credential.helper cache