(二)git 推送到遠端倉庫
寫在前面,出現的bug:
目的:要將本地檔案推送到自己建的遠端倉庫中(即github上)
總體思路:
1,在github上新建一個遠端倉庫(github上有很多遠端倉庫,一個資料夾就算一個倉庫,自己的github賬號就像一棟大樓,每個repository就是一個遠端倉庫)
2,給本地資料夾穿個馬甲,以便git能夠識別,就是通常所說的本地倉庫
3,將兩個倉庫關聯起來,通俗的說給兩個倉庫接個管子,以便利用這個管子傳送檔案,當然這管子看不見摸不著
4,傳送檔案,可以push,可以clone,可以pull
———-神奇的分割線之具體步驟
2,建立本地倉庫,找個你想要的資料夾,cd 命令進入該資料夾,比如叫做file1,然後命令列:
git init
這樣你的file1就是你建立的本地倉庫之一了。
git add 檔名
提交到暫存區
git commit -m '歸於這次提交的描述'
這樣就把你的檔案放到本地倉庫了,第二步完成.
3,建立管道:
git remote add origin 你的遠端倉庫的url
這裡要解釋一下,這個origin 是你遠端倉庫的小名,你可以用其他,但是不好記,而你真正的遠端倉庫是後面的url,url中包含你的遠端倉庫真名。但是這個origin小名跟真名掛上鉤了,有利於後面的提交命令的簡化。
4,開始傳資料了,先舉例push,即從本地倉庫推送到遠端倉庫
git push -u origin master
解釋一下,-u由於遠端倉庫剛建立,是空的,沒有分支,所有要加-u,雖然有個README檔案,以後提交可以不加-u。這裡就利用到了小名,master是遠端庫的master,這一步的意思是,將你本地倉庫上的master上的內容傳到遠端倉庫origin上的master上,此刻出現了開篇提到的報錯:
而且push不了,什麼原因呢?就是第一步上的那個README 檔案,由於本地倉庫沒有這個README檔案,所有git希望你先同步遠端的README,但是我拿這個README 沒用啊,怎麼辦?兩種辦法:
一,強制推送,網上的命令,暫時沒試過
git push -u origin +master
二,把那個README刪掉,不就OK了,但是光刪README,博主菜鳥不會啊,只會把整個repository刪掉,再新建一個沒用README檔案的repository。具體操作選定你要刪的repository,點選setting選項,注意有兩個settings,不是右上角的那個,是在和code同一行的末尾的那個。點完之後往下拉頁面,看到Delete this repository,點選進去,寫上你要刪的repository的真名就可以了。
博主刪掉了含有README 的遠端repository,重複1-4步,大功告成!
寫在後面:
question:每個遠端庫都有一個origin小名,那本地庫提交的時候怎麼知道是哪一個?
ac:
因為有了第三步建立管道,所有本地庫知道是特定的遠端origin,博主猜想你當然也可以改管道,但是沒必要,一個本地庫對應一個遠端倉庫,這樣不會亂,建好的管道再改掉,好像沒這個必要吧。