git & github -- 曾經遇到的問題的記錄


git github 相信大家都很熟悉,在使用的過程中難免會出現一些問題,更何況我這樣的經常換設備以及虛擬機的用戶,經常會遇到git的各種問題,下面簡單記錄一下曾經出現過的問題以及解決的方法,可能部分解決的方法不是很正規,但是不管怎么說在本人的環境下都能回歸到正常狀態,所以,請不要打擊我們小白的學習的勁頭^_^。

一、在進行git clone的時候,出現如下所示的問題

1 Cloneing into 'xxxx'...
2 git@github.com: Permission denied (publickey).
3 fatal: Could not read from remote repository.
4 
5 Please make sure you have the correct access rights
6 and the repository exists.

解決方案:

1、使用指令測試一下githubssh是否配置成功, -T 不顯示終端,只顯示連接成功信息

1 $ ssh -T git@github.com
輸出:
1 git@github.com: Permission denied (publickey).

2、配置一下用戶名和郵箱

1 $ git config --global user.name "username"
2 $ git config --global user.email "email@example.com"

3、此時可以嘗試一下git clone指令,本人測試實際效果還是和之前的問題是一致的,所以,繼續往下操作

1 $ ssh -v git@github.com

找到他嘗試的.ssh的路徑是這個路勁,然后好奇看了一下這個文件夾下有什么文件

天啦,里面竟然沒有id_rsa和id_rsa.pub文件,在查找一下這個文件,用Everything工具查找一下

然后將包含id_rsa的這個.ssh的這個文件夾直接替換那個沒有id_rsa的文件,然后在測試

然后再進行clone操作

完成,之后的git push pull等操作均可以正常運行。

二、git clone出現下面的問題

1 Cloneing into 'xxxx'...
2 sign_and_send_pubkey: signing failed: agent refused operation
3 Permission denied (publickey).
4 fatal: Could not read from remote repository.
5 
6 Please make sure you have the correct access rights
7 and the repository exists.

解決方案:

1、使用指令測試連接

1 $ ssh -T git@github.com
輸出:
1 sign_and_send_pubkey: signing failed: agent refused operation
2 
3 Permission denied (publickey).

2、設置用戶名和郵箱

1 $ git config --global user.name "username"
2 $ git config --global user.email "email@example.com"

3、將SSH Key添加到ssh-agent

1 $ ssh-agent -s
輸出:
1 SSH_AUTH_SOCK=/tmp/ssh-5JYIIgdzHvTM/agent.34213; export SSH_AUTH_SOCK;
2 SSH_AGENT_PID=34214; export SSH_AGENT_PID;
3 echo Agent pid 34214;

4、使用指令 ssh-add 將專用密鑰添加到ssh-agent的高速緩存中,默認路勁

$ ssh-add
輸出:
1 Identity added: /home/yourname/.ssh/id_rsa (/home/yourname/.ssh/id_rsa)

4、再次測試連接

1 $ ssh -T git@github.com
輸出:
1 Hi xxx! You've successfully authenticated, but GitHub does not provide shell access.

5、然后在進行git clone,即可成功,后續操作也沒有任何問題。

三、git clone 出現輸入密碼,並且然后Permission Denied (publickey)問題

解決方案:

可知先直接使用ssh-add ~/.ssh/id_rsa把專用密鑰(private and public keys)添加到 ssh-agent 的高速緩存中

其中 ~/.ssh/id_rsa 的根據個人不同做適當的更改

如果還是不好用,則可以按照下面的步驟繼續進行。

1、設置用戶名和郵箱

1 $ git config --global user.name "username"
2 $ git config --global user.email "email@example.com"

2、創建一個 SSH key

ssh-keygen -t rsa -C "email@example.com"

如果之前已經存在ssh key,那么會提示是否進行覆蓋,此處輸入 y

3、把專用密鑰(private and public keys)添加到 ssh-agent 的高速緩存中

$ ssh-add ~/.ssh/id_rsa

然后即可正常進行clone

四、git clone 出現

1 Permission denied (publickey).
2 fatal: The remote end hung up unexpectedly

詳看大佬博客解決。電梯直達大佬方案 

五、git bash 使用出現問題:

1 WARNING: terminal is not fully functional
2 3 - (press RETURN)

在關閉終端的時候,出現:

解決方案:

1、創建環境變量,注意大寫哦,我就是在沒有區分大小寫的時候,折騰好久。

2、在終端選項中設置 終端類型 為 xterm

六、在 ssh-add 時候出現 Could not open a connection to your authentication agent.

經查,都在說明是以哦那個指令 ssh-agent bash即可解決問題,但是本人並未有效。

解決方案:

在使用上面指令沒有效果之后,直接重新生成key,由於本地還有其他的ssh key的原因,此時設置的時候沒有使用默認的設置

1 $ ssh-keygen -t rsa -C "songshuai@git.com" # 郵箱使用自己的

1 $ ssh-add ~/.ssh/id_rsa_song
2 Identity added: /home/ma-sai-ke/.ssh/id_rsa_song (/home/ma-sai-ke/.ssh/id_rsa_song)

持續更新......


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM