一、Git Gui的使用git
二、Ssh key 介紹及使用github
三、Idea配置使用並使用gitshell
一、左側第一個框放的是未緩存的改動文件(點擊文件的小圖標便可緩存到第二個框中)瀏覽器
二、第二個放的是已緩存的文件緩存
三、文件添加到已緩存區後在Commit Message下的空白區域填寫提交註釋,點擊commit按鈕提交app
四、而後直接push添加到遠程中過程當中可能會要輸入用戶名和密碼。注意:添加到遠程以前必定要登陸GitHub網頁ssh
Ssh key介紹ide
我理解的就是每臺電腦上會產生出一個ssh key,而後本身有一個遠程帳戶,可是本身有可能有不少臺電腦,測試
包括家裏的電腦還有公司的電腦,咱們能夠在任意一臺電腦上工做,可是若是想要每臺電腦都和遠程版本庫時刻保持着通信,fetch
就須要將每臺電腦的ssh key添加到遠程帳戶,添加到遠程版本庫以後,遠程版本庫就會和已經添加的電腦進行通信而不會和其餘電腦進行通信
建議:全部的Git操做都經過ssh key進行,由於簡單
Ssh key配置
操做分爲本地電腦配置和github網站配置
第一步:本地電腦配置
右鍵空白處,選擇Git Bash Here打開相關命令窗口
1.配置用戶名和郵箱(若是已經配置,就跳過)
git config --global user.name "username"
git config --global user.email "email"
以後就會在C:\Users\Administrator下建立一個.gitconfig文件,內容爲
[user]
name = xxx
email = xxx@xxx.com
注1:username和email即github的登錄賬號和註冊郵箱
注2:git config命令的–global參數,用了這個參數,表示你這臺機器上全部的Git倉庫都會使用這個配置
2.檢查下本身以前有沒有已經生成ssh
cd ~/.ssh
ls
注1:當cd ~/.ssh命令執行後窗口返回「no such file or directory」的時候,表示咱們的電腦並無ssh key,因此須要咱們建立ssh key
注2:~表示當前用戶的目錄,好比個人是:C:\Users\Administrator
注3:ls命令執行後,若是本地有ssh祕鑰的話會有id_rsa.pub,config,known_hosts等文件
3.生成(或刪除)祕鑰
ssh-keygen -t rsa -C "xxx@xx.com"//這裏的郵箱要換成本身註冊時的郵箱
接着按3個回車便可。
注1:若是本地有ssh,執行以上命令會出現正面的提示,這裏選擇y,表示覆蓋本地的ssh key,其實也就是ssh祕鑰刪除的意思
注2:爲何要刪除祕鑰,建立SSH的時候設置過密碼,那就頗有可能git操做時出現忘記密碼的尷尬狀況,
不要想着怎麼從新修改密碼了,選擇從新建立一個ssh祕鑰
注3:建立ssh key不要輸入密碼了,否則操做起來太累~~~~~~~
4.執行命令完成後,默認會在window的C:\Users\Administrator\.ssh下面生成以下兩個名稱的文件:
C:\Users\Administrator\.ssh
id_rsa(私鑰,不能泄露出去)
id_rsa.pub(公鑰)
known_hosts(不用管)
第二步:遠程github倉庫配置
1.登錄到本身的gitbub,點擊右上角的倒立小三角形。選擇 settings
2.選擇SSH and GPG keys
3.點擊右邊的New SSH key
4.隨意填入一個title,而後 key 中粘貼剛纔複製的id_rsa.pub文本,點擊 Add key 這樣就大功告成
5.github官網有時候會要你輸入登錄密碼才能添加ssh key。輸入密碼便可
打開id_rsa.pub文件
## 第三步爲可省略步驟,若是你在取得Git倉庫時就使用的是ssh協議,就無需修改
第三步:修改你本地的ssh remote url. 不用https協議,改用git 協議
1.git remote -v 查看你當前的remote url
git remote -v
## 如何顯示以下內容,則表示Git倉庫是使用https協議進行訪問的。
origin https://github.com/lixiao12/test224.git (fetch)
origin https://github.com/lixiao12/test224.git (push)
2.使用瀏覽器登錄github,找到倉庫ssh協議相應的url。相似以下:
git@github.com:lixiao12/test224.git
3.使用 git remote set-url 來調整你的url。
git remote set-url origin git@github.com:lixiao12/test224.git
4.最後再用 git remote -v 查看一下。協議已改變
第四步:測試SSH鏈接
1.輸入測試命令
ssh -T git@github.com
若是顯示以下內容,表示ssh key添加成功:
Hi xxx! You've successfully authenticated, but GitHub does not provide shell access.
小結:https 和 SSH 的區別:
1. 前者能夠隨意克隆github上的項目,而不論是誰的;然後者則是你必須是你要克隆的項目的擁有者或管理員,須要先添加 SSH key ,不然沒法克隆。
2. https url 在push的時候是須要驗證用戶名和密碼的;而 SSH 在push的時候,是不須要輸入用戶名的;若是配置SSH key的時候設置了密碼,則須要輸入密碼的,不然直接是不須要輸入密碼的。
Git協議push遠程倉庫不須要填寫github帳號密碼,操做更加方便。
這是添加了ssh key後push的顯示
ssh key對私庫的影響
ssh提交
刪除ssh後的提交
刪除ssh後私庫push提交是不成功的
idea中配置Git
1.設置git.exe的安裝路徑
點擊菜單「File->Settings->Version Control->Git」,設置Path to Git executable的值爲:D:\tools\Git\bin\git.exe,
注1:請將上述路徑「D:\tools\Git\bin\git.exe」改成本身git的安裝目錄
注2:點擊右邊的「test」按鈕,應該顯示成功消息及git的版本信息
2.設置Github賬號
點擊菜單「Settings->Version Control->Github」
下面兩種方式選擇一種便可
注1:認證方式選擇密碼,即Auth Type:「Password」,而後輸入賬號/密碼,再測試是否鏈接成功
注2:認證方式選擇令牌
在這個網址:https://github.com/settings/tokens/new 生成token令牌
idea中使用Git
1.建立本地倉庫
VCS-->Import into Version Control-->Create Git Repository...
注1:通常會選擇當前項目所在的目錄
2.上傳項目到本地倉庫,項目右鍵選擇Git-->add,此時項目文件變成綠色,此時文件只是處於暫存區,並無真正進入到版本庫(本地)中
3.項目右鍵Git--> Commit Directory,在彈窗中輸入Commit Message,點擊commit,此時項目文件從暫存區真正進入版本庫(本地)中,項目文件變成白色
注1:在彈窗中輸入Commit Message,也能夠點擊commit and push,會同時提交到本地庫和代碼託管網站
4.上傳項目到GitHub中,VCS-->Import into Version Control-->Share Project on GitHub,在彈框中輸入倉庫名和描述,點擊Share,便可是上傳,
建立本地倉庫
git add
add後,查看狀態
git commit
commit界面
git push
點擊apply,意味着代碼已經到了本地倉庫;要提交到遠程倉庫,在作push操做;
在超大型項目會用到分支,有時間有須要再作詳細瞭解;
建立分支命令:git branch 分支名
查看全部分支命令:git branch
切換分支命令:git checkout 分支名
合併分支到master分支上命令:
首先切換到master分支,git checkout master,而後git merge 分支名。即將建立的分支合併到master上。
刪除分支命令:git branch -d 分支名
衝突解決