git鏈接遠程倉庫

基礎配置

獲取本身的SSH Key

git安裝過程省略。git

  • 第1步,查看系統本用戶路徑下有沒有.ssh目錄,好比個人目錄是C:\Users\Shawn\.ssh,有的話跳到第3步;
  • 第2步,建立SSH Key。在任意位置打開Git Bush終端,運行下面的示例命令,注意要輸入你的email地址。
    ssh-keygen -t rsa -C "youremail@example.com"

  • 第3步,查看.ssh目錄,能夠看到裏面有id_rsaid_rsa.pub兩個文件。id_rsa是私鑰,不能泄露出去,id_rsa.pub是公鑰,待會要用到

.ssh路徑

具體這兩個東西表明什麼含義,這裏不討論。github

在GitHub中添加SSH Key

  • 第1步,登錄GitHub,右上角我的頭像,選擇setting進入設置頁面;
  • 第2步,選擇SSH and GPG keys選項,可看到你本身目前的ssh信息。我本身添加了兩條,一條是公司電腦,一條是家裏電腦。

  • 第3步,點擊New SSH key,添加一個SSH Key;
  • 第4步,用編輯器打開本地的公鑰id_rsa.pub文件,所有複製粘貼到Key欄,輸入名稱,保存,就能夠成功添加一條SSH Key。

鏈接遠程倉庫

我日常遇到的有3種狀況:ssh

  • 已有GitHub遠程倉庫,拉取到本地作開發;
  • 本地的項目想丟到GitHub上;
  • GitHub有倉庫,本地也有項目,想合併到一塊。

狀況1:已有GitHub遠程倉庫,拉取到本地作開發

這種狀況很簡單,直接拉取到本地就能夠,具體操做是:編輯器

  • 獲取到遠程倉庫的地址,如:git@github.com:yourGitHubId/testRepo.git
  • 在指定路徑下打開Git Bush終端,運行命令git clone git@github.com:yourGitHubId/testRepo.git

這裏可能會提示The authenticity of host 'github.com (13.229.188.59)' can't be established.相似的命令,運行yes就行了 ——— 參考博客學習

狀況2:本地的項目想丟到GitHub上

這種狀況挺常見的,就是我本地開發的一個東西,想分享到GitHub,或者想多端同步,在其餘電腦上/其餘人蔘與開發。這種狀況比前一種要複雜,操做以下:.net

  • 第1步,建立本地倉庫,並提交當前全部修改到本地倉庫。

  • 第2步,建立遠程倉庫,空白倉庫。建立完成後,倉庫頁面會有鏈接提示,複製倉庫地址。

  • 第3步,鏈接遠程倉庫,把本地倉庫與遠程倉庫鏈接起來,運行命令:git remote add online git@github.com:yourGitHubId/testRepo.git,這裏add後面的online是隨便取的,官方習慣用origin,我這裏用online,而後運行gir remote -v查看當前鏈接的遠程倉庫信息。

  • 第4步,本地文件首次提交到遠程倉庫,運行命令git push -u online master,完成後就能夠在遠程倉庫中看到這些文件了,以後的提交不須要加-u

若是不是建立了空白倉庫,好比添加了Readme文件,可能會出現-refusing to merge unrelated histories這種報錯,這種屬於狀況3的討論範疇。3d

狀況3:GitHub有倉庫,本地也有項目,想合併到一塊

  • 第1步,建立本地倉庫,並提交當前全部修改到本地倉庫;
  • 第2步,鏈接遠程倉庫。運行命令:git remote add origin git@github.com:yourGitHubId/testRepo.git,能夠看到遠程倉庫信息。

  • 第3步,從拉取遠程倉庫文件,跟上一種狀況不同,前面是直接推送到遠程空白倉庫,如今是先從遠程倉庫拉取文件,正常拉取的命令是git pull origin master,git報警告fatal: refusing to merge unrelated histories,意思是「拒絕合併不相關的歷史」。所以要強行合併,使用命令git pull origin master --allow-unrelated-histories,拉取搞定。

  • 第4步,衝突解決。拉取遠程倉庫文件,頗有可能會出現衝突,按照普通衝突的辦法解決,而後提交本地倉庫。

  • 第5步,推送遠程倉庫,完成後能夠在遠程倉庫中查看新修改。

「拒絕合併不相關的歷史」的解決,參考這篇博客code


以上,就是我在工做學習過程當中,有關GitHub遠程倉庫鏈接的一些探索,但願能夠有幫助。cdn

參考文章

相關文章
相關標籤/搜索