1. 程式人生 > >git push 每次都需要輸入使用者名稱和密碼

git push 每次都需要輸入使用者名稱和密碼

解決方案:

每次都需要輸入使用者名稱和密碼是因為你採用的是 https 方式提交程式碼, 如果採用的是 ssh 方式只需要在版本庫中新增使用者的 sha 的key就可以實現提交時無需輸入使用者名稱和密碼。

詳細步驟:

步驟1:

如果你的版本庫已經用https 方式建立好了,那麼就需要先刪除原來的提交方式。在終端執行以下指令:

 git remote rm origin
 git remote add origin [email protected].com:(使用者名稱)/版本庫名

這裡我提供一下我的具體例子:
https: https://github.com/

使用者名稱/GitTest.git
ssh: [email protected]:使用者名稱/GitTest.git
我是怎麼知道的呢?如果你在建立版本庫時選擇不建立README.md,系統會提示你建立:

https:
…or create a new repository on the command line
echo # GitTest >> README.md

git init
git add README.md
git commit -m "first commit"
git remote add origin https://github.com/Sugerming/GitTest.git
git push -u origin master

…or
push an existing repository from the command line git remote add origin https://github.com/Sugerming/GitTest.git git push -u origin master ssh: …or create a new repository on the command line echo # GitTest >> README.md git init git add README.md git commit -m "first commit" git remote add origin
[email protected]
:Sugerming/GitTest.git git push -u origin master …or push an existing repository from the command line git remote add origin [email protected]:Sugerming/GitTest.git git push -u origin master

步驟2:

然後這個時候你使用下面指令提交程式碼:

git push -u origin master

系統會提示:

The authenticity of host 'github.com (192.30.252.131)' can't be established.
RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'github.com,192.30.252.131' (RSA) to the list of known h                             osts.
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights

說明你許可權不夠。所以這時你需要在本地建立自己的RSA的key。如下:

ssh-keygen -t rsa -C "使用者名稱"

然後系統會問你儲存路徑等東西,我直接enter跳過了。

Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/AlexYi/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:

然後系統會生成一些東西:

Your identification has been saved in /c/Users/AlexYi/.ssh/id_rsa.
Your public key has been saved in /c/Users/AlexYi/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:rxfK05d7oZWpDvQ5dRQM0Na7...
The key's randomart image is:
+---[RSA 2048]----+
|           .o.+. |
|             o o.|
|            .   o|
|               o |
...

最主要的是告訴你,你的可以在:

Your public key has been saved in /c/Users/AlexYi/.ssh/id_rsa.pub

找到這個檔案,然後用記事本開啟,就可以看到自己的key:

ssh-rsa AAAAB3NzaC1yc2EAAAADA...

步驟3:

然後將生成的rsa 的key新增到版本庫中即可,方法:
開啟自己的版本庫,點選右邊的 Settings 進入配置頁。
然後點選左邊導航欄的: Deploy keys 進入新增key頁面
然後點選: Add deploy keys ,將自己的內容輸入進去就可以了。
這樣就完成了。

最後繼續提交更改的程式碼,使用:

git push -u origin master

可以提交成功。

補充:

如果要使用 git push簡短提交程式碼:

git push

需要配置 :

git config --global push.default simple

或者:

git config --global push.default matching

區別在於,前者只提交你當前所在的分支,而後者會提交本地所有的分支。具體的自己去查一下就明白了