創建Git密鑰:
1、生成密鑰:
右鍵–>Git Bash Here:先輸入ssh-keygen –t rsa –C "郵箱地址",注意ssh-keygen之間是沒有空格的,其他的之間是有空格的,郵箱地址是咱們在注冊GitHub的時候用的郵箱。
生成的密鑰在這里:C:\Users\Administrator\.ssh
2、將id_rsa.pub用記事本打開,復制里面全部的內容,放在GitHub的SSH Keys上:
右上頭像箭頭->Settings->左側SSH and GPG keys,New SSH key,粘貼,Add GPG key
3、ssh –T git@github.com 驗證設置是否成功:
Administrator@FEZLIN8TDST7KOF MINGW64 /githere
$ ssh -T git@github.com
The authenticity of host 'github.com (13.250.177.223)' can't be established.
RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.
Are you sure you want to continue connecting (yes/no)? yes
這里回復一個yes,而!不!是!習!慣!性!回!車!!
Warning: Permanently added 'github.com,13.250.177.223' (RSA) to the list of known hosts.
Hi Xiaobai0419! You've successfully authenticated, but GitHub does not provide shell access.
這時是在c盤.ssh目錄下多生成了一個known_host文件,再次嘗試命令,成功:
Administrator@FEZLIN8TDST7KOF MINGW64 /githere
$ ssh -T git@github.com
Hi Xiaobai0419! You've successfully authenticated, but GitHub does not provide shell access.
IDEA進行Github賬號登錄時,使用https(用戶名密碼)或ssh協議(密鑰)如https://github.com才能順利登錄,http是無法成功的。
提交項目:
1、切換到項目根目錄,創建本地倉庫(.git隱藏目錄中寫入信息,如果此前有這個目錄,需先整個刪除):
$ git init
2、將目錄下所有文件添加到本地倉庫:
$ git add .
3、提交到本地倉庫,添加注釋:
$ git commit -m 'dubbo first commit'
4、添加遠程倉庫地址(需要先在GitHub上建好,復制地址到這里),命名為origin:
$ git remote add origin https://github.com/Xiaobai0419/minexiaobai0419.git
5、推傳到遠程倉庫:
$ git push -u origin master
Username for 'https://github.com': Xiaobai0419
需要輸入GitHub注冊的用戶名、密碼后確認
6、如果項目已存在於遠程倉庫(倉庫不為空,或其他人上傳、更新了倉庫),要先pull更新,尤其是有在其他點推傳更新的時候:
$ git pull --rebase origin master
尤其是在遠程新建倉庫中創建了README.MD文件的時候,一定要先pull同步遠程文件過來,再push,否則就會上傳失敗!!
7、此后可直接在配置了同一個Git.exe的IDEA中添加、提交、push到遠程倉庫。
8.合並分支
Fork分支和主分支同步,並提交到fork分支(自己的遠程倉庫,必須是先在網站上fork一份原作者分支到自己的遠程倉庫,然后git clone自己fork的遠程倉庫!):
https://blog.csdn.net/wangww631/article/details/78392734
https://www.jianshu.com/p/633ae5c491f5
分支創建、合並原理和編輯沖突、提交(也是提交到自己的遠程倉庫):
https://www.cnblogs.com/wangmingshun/p/5425150.html
GitHub請求合並分支申請(到網站申請,需要經過原作者同意,編輯沖突,合並到人家的主分支):
https://www.jianshu.com/p/43d060a082cb
GitLab的合並分支申請:
https://blog.csdn.net/zangxueyuan88/article/details/81099984
9.可視化工具SourceTree的使用
安裝時按步驟先到其網站建立一個自己賬號,完成安裝。安裝后可以關聯多個遠程倉庫,包括自己建立賬號的倉庫,或者軟件支持的GitHub、GitLab等上面自己的賬號。
將開源項目先fork到自己的遠程倉庫,然后使用該工具從自己的遠程倉庫地址clone到本地的一個倉庫(建立好的文件夾),按文中建立各種分支,停留在某個分支上,使用IDE修改本地倉庫源碼,或手動增減、修改文件,停留的分支自動感應變化,再按文中提示進行提交、編輯沖突、合並分支、推送到遠程倉庫,其中推送到遠程倉庫需要提供你自己遠程倉庫的用戶名、密碼,確認后成功推送。
https://www.cnblogs.com/tian-xie/p/6264104.html
https://blog.csdn.net/wjy1990831/article/details/80417820
https://www.jianshu.com/p/be9f0484af9d
10.IDEA直接在GitHub遠程創建倉庫,提交並推送
a.配置好Git,GitHub個人賬號、密碼
b.選中項目,使用VCS->Import into Version Control->Share Project on GitHub,這樣只能在遠程創建一個同名的空倉庫:
c.這時項目右鍵出現Git,選擇add,commit你想提交的部分
d.這時使用VCS->Git->push是會推送失敗的,因為IDEA默認給配置的遠程倉庫地址是錯誤的!需要在VCS->Git->Remotes中改為GitHub上該倉庫復制地址:
修改成正確的GitHub遠程倉庫地址之后,使用push即可遠程推送代碼成功。
e.要使用IDEA從遠程GitHub庫引進一個項目,需要使用VCS->Git->Clone,添加遠程庫Git地址,修改后可按上述方法直接提交,推送到遠程庫。
11.怎樣在GitHub更新fork到自己倉庫的項目
參照https://blog.csdn.net/zhongzunfa/article/details/80344585
注意點擊compare across forks時,base fork選填自己fork的項目,head fork選填原作者主分支項目,這樣才能操作成功!!