本文目錄結構:本文適用場景在GitHub建立倉庫設定ssh密匙同步程式碼1.本文適用場景:Windows 10本地已經存在開發中專案 git-test,需要上傳到遠端倉庫git 已經安裝好遠端倉庫這裡使用GitHub2.在GitHub建立倉庫
個人頭像下拉選單中 開啟 Your repositories,可以檢視自己的倉庫列表。
建立倉庫時的填寫內容建立完成3.生成SSH Key(生成 公鑰和私鑰)①:開啟Git Bash,在這裡使用命令 ssh-keygen -t rsa -C "郵箱地址"
命令詳解如下:
ssh-keygen -t rsa -C “any comment can be here”
-t = 金鑰的型別(The type of the key to generate) ,這裡引數值是 rsa
-C = 用於識別這個金鑰的註釋 ,可以是任何內容(comment to identify the key)
雖然可以填寫任何內容,但為了方便記憶,一般都填寫郵箱。
②:選擇密匙檔案儲存位置
會生成兩個檔案 id_rsa和id_rsa.pub
預設路徑是:/c/Users/iskyl/.ssh/
其中iskyl是我的windows10 使用者名稱。
如果預設就直接回車。
如果電腦只可能你自己使用,那不設定操作更方便,不然每次提交都輸入祕鑰的密碼,很煩人。
④:生成祕鑰的地址
⑤:檢視公鑰的內容,這個需要複製,設定到github中。
4、將公鑰設定到GitHub中①:點選 頭像的下拉選單的Settings,進入設定頁面
③:設定公鑰,名字隨便,當有多個時,能知道代表含義就可以。key中內容就是生成的id_rsa.pub內容完全複製過來的。
儲存之後的列表顯示:
④:驗證公鑰連線。
ssh -T [email protected]
連線成功,會生成known_hosts檔案,並且將github.com連線的ip,通訊公鑰等內容加入到檔案中。作為信任列表。
5. 上傳原生代碼。
以下步驟中有兩部分可能你不會遇到,所有有些內容是因為環境,可以跳過,關鍵是知道原因,選擇執行:
git config --local設定email和name,如果之前電腦中使用設定過 git,或者設定過git config --global user.email或者name,就不會遇到步驟④的提示,也可以跳過設定。如果遠端github上面建立的倉庫檔案和本地檔案不同,也就是沒有衝突,也就可以順利的git pull之後,順利git push,完成同步。也不會遇到檔案衝突,解決衝突。在設定好ssh key,能通訊後,其實以下各個步驟就是為了完成程式碼準備好後提交:先建立本地倉庫(git init);新增檔案,提交到本地倉庫(git add 和git commit);提交到遠端倉庫(git remote add、git pull、git push)。①:在需要上傳的專案資料夾上面,右鍵開啟Git Bash Here
②:建立專案git倉庫 git init . (注意最後的點 .)執行後 專案目錄下回新增 .git資料夾
③:新增檔案到暫存區 git add -A . (同樣注意最後的點 .)含義是當前資料夾的所有變化都提交到暫存區。
因為我的專案中有 .gitignore檔案,設定了不需要提價的一些檔案,所以會有 warning。
(注意:因為github上建立倉庫時我選擇了建立 .gitignore檔案,所以會導致後續更新GitHub程式碼步驟的檔案衝突,並且自動merge會失敗,稍後說明解決辦法。)
④:插播:設定提交時的 email和name,這個是顯示的提交人,所有人可見,非賬號(當然也可以設定為github賬號郵箱)。
提示的是設定 global全域性,但是我打算其他專案使用其他賬號,比如公司內部的倉庫提交記錄顯示工號姓名。所以我使用的是 git config --local (--local引數表明設定只對本目錄專案生效)
檢視設定結果 git config --list
⑤:提交到本地倉庫
⑥:設定 remote :origin是名稱,後面是git遠端倉庫地址,當前是ssh的.git地址
⑦:拉取遠端倉庫的程式碼到本地(先拉取程式碼、編輯衝突,然後才提交全部程式碼)
⑨:提交到遠端倉庫
⑩:檢視GitHub提交記錄
OVER!