Git使用教程(2):Git遠程倉庫

道阻且長,行則將至。埋頭苦幹,不鳴則已,一鳴驚人!加油,騷年!

1 git遠程倉庫的創建

  git 的遠程倉庫,其實就是 GitHub ,在使用 git 之前,我們就應該有了 GitHub 的賬號,如果還沒有的話,可以直接去官網註冊。

  創建遠程倉庫的步驟也很簡單,在個人主頁,直接點擊 New 即可,如下圖:

  接下來就是填寫一些基本信息等,需要注意的是:GitHub 不允許有空的倉庫、或空的文件夾,如果此倉庫/文件夾下沒有內容,則會創建失敗。

image-20200523184819376

  如果不在創建倉庫時,默認創建一個 ReadMe 文件,則在創建倉庫成功後,還是需要創建一個文件的。

2 使用 HTTPS 協議

  GitHub 給我們提供了兩種方式克隆倉庫,一種是 HTTPS 協議,一種是 ssh 協議。兩種協議都可以,後邊會簡單介紹一下兩種協議的區別。

  使用 HTTPS 協議時,直接進入到倉庫,點擊 Clone or download ,選中 Use HTTPS ,然後出現如下圖界面,直接點擊網址後邊小按鈕,即可完成複製。

image-20200523191326576

  接着到本地對應文件夾下,打開 git bash ,然後使用如下命令:

git clone https://github.com/FightingBoom/MyBlog.git

注意:如果我們的倉庫是空的,則在克隆時,會提示克隆了一個空倉庫到本地。

  當成功克隆倉庫到本地後,就可以在本地做一些相應的操作,基本過程和本地倉庫一樣,不過多了最後一步 git push 。把基本流程再次描述如下:

// 添加文件到緩衝區
git add filenamae

// 可選:查看當前提交狀態
git status

// 提交文件到緩衝區
git commit -m "此處是版本修改說明,必須寫"

// push文件到遠程倉庫(第一次使用可能需要登錄賬號密碼)
// 容易受網速影響,如下圖,第一次push超時
git push

  上邊的步驟都是從本地提交/推送到遠程倉庫,那怎麼從遠程倉庫獲取內容呢?git 提供瞭如下命令:

git pull

  我們可以在對應路徑下,使用此命令,拉去遠程倉庫相同路徑下的所有有改變的內容

3 使用 SSH 協議

  使用 SSH 協議,就相當於把自己在使用的電腦添加到 GitHub 的白名單中,這樣後續在此電腦上就可以直接操作遠程 GitHub 倉庫,而無需每次都要登錄賬號密碼。

  這個方式和之前我的利用 GitHub + PicGo + Typora 搭建屬於自己的圖牀,這篇文章中使用的方式剛好相反,不過原理都大差不差。具體操作步驟如下:

3.1 創建本地電腦SSH Key

  可同步參考廖雪峯老師的教程,點擊這個傳送門👉:遠程倉庫

  在本地倉庫文件夾內,打開 git bash ,然後輸入如下命令,後邊的是自己註冊 GitHub 賬號時的郵箱名。

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

  使用上述命令,可以一路回車,全部使用默認參數即可,當執行完畢後,可以在用戶主目錄下,找到 .ssh ,這個文件夾,路徑參考下圖:

image-20200523194246222

  在此文件夾下,可以看到 id_rsa id_rsa.pub 這兩個文件,需要注意的是:

  1. id_rsa 是私鑰,不能告訴任何人;
  2. id_rsa.pub 是公鑰,可以告訴別人;

  接下來就要去 GitHub 上添加本地電腦的公鑰,這個是一個鑑權操作,目的就是爲了讓 GitHub 知道,是誰在進行操作,也就相當於添加到白名單當中。

  具體步驟簡要總結如下:

  1. 點擊個人頭像,找到 Settings
  2. 點擊 SSH and GPG keys
  3. 點擊 New SSH key
  4. 按照如下圖示,依次添加必要的內容,即可。

image-20200523210138190

  添加完畢後,就可以去複製 SSH 克隆的網址了,然後用同樣的步驟在本地進行測試,如果成功推送/拉去,則 GitHub 上的公鑰會變成綠顏色,並顯示出來在什麼時候使用的等等。

image-20200523210637567

4 HTTPS 協議與 SSH 協議區別

  參考廖雪峯老師的網站介紹,網址傳送門:從遠程庫克隆,兩者的區別,參考如下截圖:

image-20200523190854465

  所以如何選擇,主要還是看自己啦,不過目前比較常用的就是 SSH 協議;

  根據老師內容,簡單總結區別如下:

協議 速度 備註
SSH協議 較快 一次設置,後續無需更改
HTTPS協議 稍慢 每次推送均需要輸入賬號密碼驗證

5 總結

  1. 本節主要學會了兩種克隆的方法,一種是 HTTPS 協議,一種是 SSH 協議;
  2. 簡單瞭解了兩種協議的操作步驟,及各自的特點;
  3. 關於推送提交等內容,學習不夠深入;
  4. 本節課推送的分支全部爲 master 分支,後續需要學習多分支操作等。

如果文章內容有誤,麻煩評論/私信多多指教,謝謝!如果覺得文章內容還不錯,留個讚唄,您的點贊就是對我最大的鼓勵,謝謝您嘞!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章