背景:
目前一些開源代碼均在 GitHub上管理的,包括自己寫的代碼也可以放在上面進行管理。但問題是,當你換一台電腦,想要將你自己放在 GitHub 上的代碼工程下載下來的時候,會遇到各種問題,目前可以使用4種工具下載代碼,可以使用兩種不同的方式。
內容:
1、使用 Git Gui 下載代碼
在官網下載 TortoiseGit 和 Git GUI for windows ,下載完成之后,進行安裝。
圖一
- 在設定為 git 的目錄中右鍵,打開 Git GUI 軟件
圖二
圖三
使用賬號打開GitHub,同時打開自己的工程,在Clone or download 下拉之后,選擇 use SSH,拷貝 輸入框中的內容到 Git GUI 界面中。
圖四
此時點擊 Clone,會提示如下內容:
此時應該是SSH-key沒有生成,需要到 GitHub 上,打開settings ---> SSH and GPG keys ---> 點擊右側的 generating SSH keys,查看官方的介紹,如何生成SSH key。
大致步驟如下:
(1) 首先檢查服務器上否已經安裝了 SSH key。
- 打開 Git Bash
- 執行 ls -al ~/.ssh 命令,如下圖
可以看到以下列出了含有 SSH key的地方。當列表里面沒有數據的時候,此時需要 生成一個新的 SSH key,並添加到 ssh-agent (見操作4) 和 Git Hub(見操作3)中。
(2) 生成新的 SSH key
- 打開 Git bash 工具
- 執行 ssh-keygen -t rsa -b 4096 -C "your email@example.com"
(3) 將 SSH key添加到 GitHub上
- 直接打開 id_rsa.pub文件;
- 將其中的內容拷貝到 GitHub上 (setting----> SSH and GPG keys )選擇 New SSH key。
(4) 將 SSH key 添加到 ssh-agent上。
如果安裝了 GitHub Desktop,可以直接使用這個工具下載代碼,不需要 SSH key。
確保 ssh-agent正在運行的方法:
- 如果使用了GitHub desktop 提供的 Git shell,那么 ssh-agent肯定是在運行的;
- 如果使用 Git for windows 這種類似的中斷,可以使用命令 開啟 ssh-agent
- 將之前生成的 SSH Key 添加到 ssh-agent
(5)完成以上操作之后,重新打開 Git GUI(按照)圖一 ----- 圖四 進行操作
下載過程中可能會要求輸入 (2) 步驟中設定的密碼。
但是即使按照以上的步驟,仍然會出現以下問題,此時可能的問題是 若服務器是公司的,可能是被公司限制出了,此時需要使用 Git Bash工具進行操作。
2、使用 Git Bash 下載代碼
(1) 打開Git Bash 工具
(2) 使用SSH 下載代碼
- 輸入命令 ssh -v git@github.com 查看 SSH key 情況
在圖中可以看到說是加載不到對應的 key 所屬的文件,一般情況下,我們下一步做法可能是 重新生成 Key,但是即使重新生成了Key,也會發現還會有以上的問題。
(3) 使用 https 下載代碼
- git clone https://......(git地址)
但是 發現 rsult =18的錯誤。 查詢相關日志,執行了一下命令
- git config --global http.postBuffer xxxxxx (將接受代碼的緩存擴大)
- 再次執行 git clone https://......(git地址)
發現又有 result = 56,由於我自己使用的是公司的電腦進行操作的,懷疑可能是公司對下載的代碼量有限制。因此 將 下載代碼的地址更換成了另一個工程(代碼量非常小),發現下載成功了。