Git的下載路徑和資料請看上一篇博客java
http://www.javashuo.com/article/p-gnwwvxhc-en.htmlgit
漢化破解資料:github
連接: https://pan.baidu.com/s/1RJ2zoS0AcRW_wGBKplnjGg 提取碼: e4ffshell
在任何地方鼠標右鍵選擇Git Gui就能夠了緩存
提交完了還只是放入暫時緩存區,咱們須要上傳到遠程倉庫中app
對於SSH詳情瞭解能夠去看看這個:http://www.findme.wang/blog/detail/id/258.htmlssh
每臺電腦上會產生出一個ssh key,而後本身有一個遠程帳戶,可是本身有可能有不少臺電腦,ide
包括家裏的電腦還有公司的電腦,咱們能夠在任意一臺電腦上工做,可是若是想要每臺電腦都和遠程版本庫時刻保持着通信,測試
就須要將每臺電腦的ssh key添加到遠程帳戶,添加到遠程版本庫以後,遠程版本庫就會和已經添加的電腦進行通信而不會和其餘電腦進行通信
建議:全部的Git操做都經過ssh key進行,由於簡單
第一步:本地電腦配置
右鍵空白處,選擇Git Bash Here打開相關命令窗口
1.配置用戶名和郵箱(若是已經配置,就跳過)
git config --global user.name "username" --引號中自定義 git config --global user.email "email"
以後就會在C:\Users\Administrator下建立一個.gitconfig文件
注意:
1.1:檢查下本身以前有沒有已經生成ssh
cd ~/.ssh
證實有ssh存在
當cd ~/.ssh命令執行後窗口返回「no such file or directory」的時候,表示咱們的電腦並無ssh key,因此須要咱們建立ssh ke
ssh-keygen -t rsa -C "xxx@xx.com" --建立.ssm文件,若是沒有這個文件執行便可,接着按三個回車便可。
注意:若是本地有ssh,執行以上命令會出現正面的提示,這裏選擇y,表示覆蓋本地的ssh key,其實也就是ssh祕鑰刪除的意思
執行命令完成後,默認會在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。輸入密碼便可
4.隨意填入一個title,而後 key 中粘貼剛纔複製的id_rsa.pub文本,點擊 Add key 這樣就大功告成
5.github官網有時候會要你輸入登錄密碼才能添加ssh key。輸入密碼便可
成功
第四步:測試SSH鏈接
1.輸入測試命令
ssh -T git@github.com
若是顯示以下內容,表示ssh key添加成功:
Hi xxx! You've successfully authenticated, but GitHub does not provide shell access.
1.前者能夠隨意克隆github上的項目,而不論是誰的;
然後者則是你必須是你要克隆的項目的擁有者或管理員,須要先添加 SSH key ,不然沒法克隆。
2.https url 在push的時候是須要驗證用戶名和密碼的;而 SSH 在push的時候,是不須要輸入用戶名的;
若是配置SSH key的時候設置了密碼,則須要輸入密碼的,不然直接是不須要輸入密碼的。
3.Git協議push遠程倉庫不須要填寫github帳號密碼,操做更加方便。
若是沒有在github的官網上配置ssh key的公鑰
idea中配置Git
1.設置git.exe的安裝路徑
點擊菜單「File->Settings->Version Control->Git」,設置Path to Git executable的值爲:
2.設置Github賬號
點擊菜單「Settings->Version Control->Github」
idea中使用Git
1.建立本地倉庫
VCS-->Import into Version Control-->Create Git Repository...
這裏就用java項目來簡單測試一下
寫一個測試類Dome
package com.huangting; /** * @author 黃大娘 * @company dogsun * @oreata 2019-10-17 20:33 */ public class Dome { public static void main(String[] args) { System.out.print("git ideaui test"); } }
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,便可是上傳,
將本地倉庫同步到遠程倉庫(這裏不須要預先在github上創建,再作關聯,與命令的方式有所不一樣)
去遠程倉庫上查看有沒有
衝突問題的出現就是兩臺電腦同時修改一個文件,電腦A修改之後而且提交成功,可是電腦B並不知道,因此在提交時發生衝突
首先模擬一下兩我的都有同一個項目的場景;
將遠程倉庫克隆到本地,成爲本地倉庫
新增一個文件夾t224_ideaht來做爲寧另外一個倉庫
去遠程倉庫中獲取ssh
克隆成功。。
在兩個倉庫中同時修改同文件的代碼,而且t224_ideaht push到遠程倉庫中
而後t224_idea也要提交可是發生衝突
點擊Merge
點擊中間的紅箭頭,兩邊都點會自動合併代碼。
點擊apply,意味着代碼已經到了本地倉庫;要提交到遠程倉庫,在作push操做;