Git 學習(3) 遠端倉庫

2021-06-29 04:52:29 字數 1866 閱讀 6740

我們在辦公室的電腦上建立了版本庫並新增了專案,然後想在自己家的電腦上也能對專案進行修改,當然,也不太可能把自己在公司使用的電腦整成伺服器是吧,要是想建立自己的版本庫伺服器,可以自行查詢一下。所以我們可以借助乙個叫做github的網站託管我們的所有專案。

註冊很簡單,所有網站註冊都一樣的步驟,然後接下來是重點。github與git之間的傳輸是由ssh加密的,所以要先進行如下步驟:

1、確定一下電腦裡面有沒有.ssh目錄,沒有的話,輸入如下指令建立:(前文好像忘了說沒說過,在windows裡面ls是無法檢視到很多檔案的,可以用ls -lah檢視)

$ ssh-keygen -t rsa -c "[email protected]"

[email protected]是你自己的郵箱位址,不要弄錯了。不需要特別的設定,一路預設就行了,建立完成之後,就可以看到主目錄裡面出現.ssh這個目錄了,進去裡面,可以看到id_rsa以及id_rsa.pub 這兩個檔案,這叫做金鑰對,其中 id_rsa 是私鑰,id_rsa.pub是公鑰。

2、將公鑰 id_rsa.pub新增到github裡面,這樣,你的github就可以識別來自你的版本庫的推送了。登陸github,點選右上角的settings,在左側出現了一列選項,選擇ssh keys,然後點選add ssh key,在title部分隨意填寫你的標題,主要是你自己識別,然後在key下面的空白框裡把前面的id_rsa.pub裡面的內容複製過來,然後點選下方的add key按鈕即可。這樣,你的github上的版本庫就能識別你由本地版本庫發起的推送了。

從本地推送遠端庫:

現在我們要把本地的內容推送到github,根據提示,我們先在遠端建立乙個庫create newrepositoryrepository name叫做mygit吧,然後點選create repository,就建立了乙個庫,不過目前該庫是空的,我們可以將遠端庫和本機庫關聯:

$ git remote add origin

上面的origin是預設的遠端庫的叫法,關聯了本地庫和遠端庫之後,我們就可以把本地的內容推送到github了,在本地的mygit下輸入如下指令:

$ git push -u origin master
-u 引數僅在第一次推送時才加,因為此時遠端庫裡面並沒有東西,在之後,本地的庫就跟遠端庫關聯起來了,以後當在本地進行修改之後,只需要輸入

$ git push origin master
可隨時將本地master分支的最新內容推送到github。

從遠端庫轉殖:

我們的專案已經推送到遠端了,這時候你希望在家裡的電腦上也建立版本庫,並能隨時對工作進行修改,那麼,我們就需要把工作從遠端庫轉殖到本地電腦上,提前裝好git,然後輸入:

$ git clone https://github/yourname/mygit.git
然後你就可以檢視本地庫裡面有沒有test.txt檔案了,如果你需要將修改推送至github的話,則要遵循以上步驟,首先生成ssh key金鑰對,然後將id_rsa.pub裡面的內容新增至github的ssh key中,這樣,遠端庫才可以識別你的庫。

也就是說,只要知道遠端庫的位址,你就可以下載其內容,至於推送,則需要先關聯才行,別人的賬號你是沒法推送的。

剛看到一句,記住學習了,「git支援多種協議,包括https,但通過ssh支援的原生git協議速度最快。」 

$ git clone [email protected]:yourname/mygit.git

Git學習 遠端倉庫

建立遠端倉庫 本地現在有乙個倉庫git,同時可以在github上建立乙個同名的git倉庫,可以供自己和他人協同操作。1.在github電機new repository建立乙個新倉庫,名稱保持與本地一致。repository name 倉庫名稱 description 可選 倉庫描述介紹 public...

git學習之遠端倉庫

要關聯乙個遠端庫,使用命令git remote add origin git server name path repo name.git 關聯後,使用命令git push u origin master第一次推送master分支的所有內容 此後,每次本地提交後,只要有必要,就可以使用命令git p...

git學習(4)遠端倉庫

三 遠端倉庫 1.新增遠端庫 1 關聯遠端庫 git remote add origin git github.com zzddl 使用者名字 learngit.git 2 推送本地庫的內容到遠端庫 git push u origin master在之後的提交中只需要輸入 git push orig...