1. 程式人生 > >Git之SSh key配置&Github的使用

Git之SSh key配置&Github的使用

SSH key配置:

先介紹一下ssh:它提供了一種與GitHub通訊的方式,通過這種方式,能夠在不輸入密碼的情況下,將GitHub作為自己的remote端伺服器,進行版本控制。

1.檢查ssh key是否存在:

輸入下面的命令,如果有檔案id_rsa.pub 或 id_dsa.pub,則直接進入步驟3將SSH key新增到GitHub中,否則進入第二步生成SSH key

ls -al ~/.ssh
# Lists the files in your .ssh directory, if they exist

2. 生成新的ssh key

第一步:生成public/private rsa key pair

在命令列中輸入ssh-keygen -t rsa -C "[email protected]"

預設會在相應路徑下(/your_home_path)生成id_rsaid_rsa.pub兩個檔案,如下面程式碼所示

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 (/your_home_path/.ssh/id_rsa):

第二步:輸入passphrase(本步驟可以跳過)

設定passphrase後,進行版本控制時,每次與GitHub通訊都會要求輸入passphrase,以避免某些“失誤”

Enter passphrase (empty for no passphrase): [Type a passphrase]
Enter same passphrase again: [Type passphrase again]

sample result: 

Your identification has been saved in /your_home_path/.ssh/id_rsa.
Your public key has been saved in /your_home_path/.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]

第三步:將新生成的key新增到ssh-agent中:

# start the ssh-agent in the background
eval "$(ssh-agent -s)"
Agent pid 59566
ssh-add ~/.ssh/id_rsa

3. 將ssh key新增到GitHub中

用自己喜歡的文字編輯器開啟id_rsa.pub檔案,裡面的資訊即為SSH key,將這些資訊複製到GitHub的Add SSH key頁面即可

windows

clip < ~/.ssh/id_rsa.pub
# Copies the contents of the id_rsa.pub file to your clipboard

4.驗證是否成功,在git bash下輸入

$ ssh -T [email protected]

回車就會看到:You’ve successfully authenticated, but GitHub does not provide shell access 。這就表示已成功連上github

5.設定username和email,因為github每次commit都會記錄他們

$ git config --global user.name "your name"

$ git config --global user.email "[email protected]"

上傳程式碼到Github:

第一步:在根目錄下,執行git命令

git init

第二步:檢視狀態,並將其新增到緩衝區中

git status 
git add <file>

第三步:將檔案commit,提交修改

git commit -m "註釋語句"

第四步:去github上對應的Repository下,複製連結地址

第五步:上傳github之前,要先pull一下:

git pull origin master

第六步:將本地的倉庫關聯到github上

git remote add origin '你自己的連結地址'

第七步:上傳程式碼到github遠端倉庫

git push -u origin master

.gitignore檔案

.gitignore顧名思義就是告訴git需要忽略的檔案,這是一個很重要並且很實用的檔案。一般我們寫完程式碼後會執行編譯、除錯等操作,這期間會產生很多中間檔案和可執行檔案,這些都不是程式碼檔案,是不需要git來管理的。我們在git status的時候會看到很多這樣的檔案,如果用git add -A來新增的話會把他們都加進去,而手動一個個新增的話也太麻煩了。這時我們就需要.gitignore了。

簡單常用的git的相關命令:

git branch檢視當前有哪些分支,初識只會有一個master分支
git checkout -b feature  建立一個名為feature的分支
git clone 連結地址       下載專案原始碼
git log   檢視歷史提交記錄。
git checkout commitId  
git checkout master  回到主分支
git pull   下載新程式碼
git branch -D feature  刪除分支,強制刪除,無法恢復