今天在學習github的時候遇到了一些問題,然后爬了一會,找到了解決方法記錄下來,以防忘記,當然能幫助別人最好啦!
github教科書傳送門:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
再學習到"添加遠程倉庫"的時候遇到了 Permission denied (publickey) 這個問題,
總結來說以前的步驟如下所示:
1、git config --global user.name "usernme"
2、git config --global user.email "emailName"
3、git bash 進入工程目錄:git init
4、使用git add filename 將文件添加到庫
5、使用git commit -m "first commit" 進行提交
6、本地與倉庫進行配對 git remote add origin git@github.com:eoooxy/git_test.git
7、把本地的內容推送到倉庫中 git push -u origin master
8、然后下一步理想的狀態是提交到了遠程倉庫了,但是這邊他就報錯了:

這樣一來我就尷尬了。然后百度了下 解決方法是,先生成一個key,命令是: ssh-keygen -t rsa,然后有下面的提示

第一個紅線的框應該是讓你把輸入保存的名字,第二籃框子就是輸入密碼,空就上沒有密碼(英語是體育老師教的,好傷心啊!)
然后 下面就是一系列 不知名的東西。。。文件是生成在當前的路徑的
然后 cat windows.pub 之后會有一串數字
復制 public key (windows.pub中的一串數字) 到你賬戶的 list of SSH keys, 再重新push.
到這我是沒有成功的 然后網上又查了下,說用下面的命令來測試下:
$ ssh -v git@github.com
然后我就發現了

他在找公鑰的時候都在我的c盤下面找的而且名字為 id_XXX,而我生成的空間是在d盤,之后我就把window改名id_rsa就,然后再次測試 ,結果為下

反正我看不懂沒有報 Permission denied (publickey) 錯誤就對了。。。
然后在push代到倉庫中就OK了
補充 2017-5-4
如果提交的時候出現:

那么:參考:https://segmentfault.com/q/1010000002736986/a-1020000002737032
是不是在不同的機器上上做了提交??
遠程分支上存在本地分支中不存在的提交,往往是多人協作開發過程中遇到的問題,可以先fetch再merge,也就是pull,把遠程分支上的提交合並到本地分支之后再push。
如果你確定遠程分支上那些提交都不需要了,那么直接git push origin master -f,強行讓本地分支覆蓋遠程分支。。。
以上就是解決方法!
感謝:http://blog.csdn.net/xzz_hust/article/details/8969090
https://www.oschina.net/question/1182280_118510
