初次安裝git配置使用者名和郵箱
初次安裝git需要配置使用者名和郵箱,否則git會提示:please tell me who you are.
你需要運作指令來配置你的使用者名和郵箱:
$ git config --global user.name "superGG1990"
$ git config --global user.email "[email protected]"
注意:(引号内請輸入你自己設定的名字,和你自己的郵箱)此使用者名和郵箱是git送出代碼時用來顯示你身份和聯系方式的,并不是github使用者名和郵箱
git使用ssh密鑰
git支援https和git兩種傳輸協定,github分享連結時會有兩種協定可選:
git協定連結圖例 : ↓
https協定連結圖例:↓
git使用https協定,每次pull, push都會提示要輸入密碼,使用git協定,然後使用ssh密鑰,這樣免去每次都輸密碼的麻煩
初次使用git的使用者要使用git協定大概需要三個步驟:
一、生成密鑰對
二、設定遠端倉庫(本文以github為例)上的公鑰
三、把git的 remote url 修改為git協定(以上兩個步驟初次設定過以後,以後使用都不需要再次設定,此步驟視以後項目的remote url而定,如果以後其他項目的協定為https則需要此步驟)
一、生成密鑰對
大多數 Git 伺服器都會選擇使用 SSH 公鑰來進行授權。系統中的每個使用者都必須提供一個公鑰用于授權,沒有的話就要生成一個。生成公鑰的過程在所有作業系統上都差不多。首先你要确認一下本機是否已經有一個公鑰。
SSH 公鑰預設儲存在賬戶的主目錄下的 ~/.ssh 目錄。進去看看:
$ cd ~/.ssh
$ ls
authorized_keys2 id_dsa known_hosts config id_dsa.pub
看一下有沒有id_rsa和id_rsa.pub(或者是id_dsa和id_dsa.pub之類成對的檔案),有 .pub 字尾的檔案就是公鑰,另一個檔案則是密鑰。
假如沒有這些檔案,甚至連 .ssh 目錄都沒有,可以用 ssh-keygen 來建立。該程式在 Linux/Mac 系統上由 SSH 包提供,而在 Windows 上則包含在 MSysGit 包裡:
$ ssh-keygen -t rsa -C "[email protected]"
Creates a new ssh key using the provided email # Generating public/private rsa key pair.
Enter file in which to save the key (/home/you/.ssh/id_rsa):
直接按Enter就行。然後,會提示你輸入密碼,如下(建議輸一個,安全一點,當然不輸也行,應該不會有人閑的無聊冒充你去修改你的代碼):
Enter same passphrase again: [Type passphrase again]
完了之後,大概是這樣:
Your public key has been saved in /home/you/.ssh/id_rsa.pub.
The key fingerprint is: # 01:0f:f4:3b:ca:85:d6:17:a1:7d:f0:68:9d:f0:a2:db [email protected]
到此為止,你本地的密鑰對就生成了。
二、添加公鑰到你的遠端倉庫(github)
1、檢視你生成的公鑰:
$ cat ~/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC0X6L1zLL4VHuvGb8aJH3ippTozmReSUzgntvk434aJ/v7kOdJ/MTyBlWXFCR+HAo3FXRitBqxiX1nKhXpHAZsMciLq8vR3c8E7CjZN733f5AL8uEYJA+YZevY5UCvEg+umT7PHghKYaJwaCxV7sjYP7Z6V79OMCEAGDNXC26IBMdMgOluQjp6o6j2KAdtRBdCDS/QIU5THQDxJ9lBXjk1fiq9tITo/aXBvjZeD+gH/Apkh/0GbO8VQLiYYmNfqqAHHeXdltORn8N7C9lOa/UW3KM7QdXo6J0GFlBVQeTE/IGqhMS5PMln3 admin@admin-PC
2、登陸你的github帳戶。點選你的頭像,然後
Settings -> 左欄點選 SSH and GPG keys -> 點選 New SSH key
3、然後你複制上面的公鑰内容,粘貼進“Key”文本域内。 title域,自己随便起個名字。
4、點選 Add key。
完成以後,驗證下這個key是不是正常工作:
$ ssh -T [email protected]
Attempts to ssh to github
如果,看到:
Hi xxx! You've successfully authenticated, but GitHub does not # provide shell access.
恭喜你,你的設定已經成功了。
三、修改git的remote url
使用指令 git remote -v 檢視你目前的 remote url
$ git remote -v
origin https://github.com/someaccount/someproject.git (fetch)
origin https://github.com/someaccount/someproject.git (push)
如果是以上的結果那麼說明此項目是使用https協定進行通路的(如果位址是git開頭則表示是git協定)
你可以登陸你的github,就像本文開頭的圖例,你在上面可以看到你的ssh協定相應的url,類似:
複制此ssh連結,然後使用指令 git remote set-url 來調整你的url。
git remote set-url origin [email protected]:someaccount/someproject.git
然後你可以再用指令 git remote -v 檢視一下,url是否已經變成了ssh位址。
然後你就可以愉快的使用git fetch, git pull , git push,再也不用輸入煩人的密碼了
參考連結:http://www.tuicool.com/articles/BzUrAvF