1. 程式人生 > 實用技巧 >git結合github遠端倉庫使用

git結合github遠端倉庫使用

遠端倉庫github使用====================================

多人協作開發流程:

A在自己計算機建立本地倉庫

Agithub中建立遠端倉庫

A將本地倉庫推送到遠端倉庫

B克隆遠端倉庫到本地進行開發

B將本地倉庫開發的內容推送到遠端倉庫

A將遠端倉庫內的最新內容拉取到本地

Github註冊使用

一、訪問github官網,進行註冊sign up註冊,sign in登入。

二、在github中建立專案

github倉庫建立完成後,可見基本使用命令介紹:

三、命令介紹

建立完成後,會自動進入到該遠端倉庫的命令介紹頁面

如同:
https:
//github.com/qika2013/git-demo.git 這就是表示遠端倉庫的地址 git push 遠端倉庫地址 分支名稱 git push 遠端倉庫地址別名 分支名稱 git push -u 遠端倉庫地址別名 分支名稱   -u表示記住推送地址和分支,下次推送只需要輸入git push即可了 git remote add 遠端倉庫地址別名 遠端倉庫地址

四、實際操作:

1、推送本地內容內容到遠端倉庫

輸入:git push 遠端倉庫地址 自己要推送的本地分支名稱

輸入完成後,會彈框進行驗證許可權。正常進行操作即可

完成後:git 的命令列介面展示出推送成功的資訊,成功將

master推送到遠端倉庫

並且:開啟github可檢視到自己本地推送的內容

2、給遠端倉庫地址起一個別名(否則每次都輸入很長一大串,太長)

git remote add 遠端倉庫地址別名 遠端倉庫地址

截圖裡的origin 就是對github遠端倉庫的地址設定的別名

然後,後面再進行將本地倉庫內容推送至遠端倉庫時,只需要:

git push origin master

3、 -u命令記住推送地址和分支,下次直接輸入git push就可以推送

因為首次使用了-u命令後,後續進行推送本地倉庫master分支內容到遠端時,只需要輸入git push即可(這樣是否就像網站的記住賬號密碼功能?)

克隆

克隆遠端倉庫資料到本地,命令: git clone 遠端倉庫地址

注意:
1一般用於第一次加入專案組內時使用,因為這時候你沒有專案程式碼,直接先將遠端倉庫內所有克隆下來
2克隆是不需要像之前自己推送那樣需要驗證。克隆可以隨便對遠端倉庫github的內容進行克隆拉取(只要倉庫可見)

實際操作:

1開啟github專案頁面

在專案頁面可見code(滑鼠點選會看見當前專案的倉庫地址,複製出來即可)

另:不會使用Git的可以直接點選download,下載專案的壓縮包也可

2在自己本地電腦新建資料夾(用來存放克隆專案,隨便自己放),然後右鍵進入git命令列

github當中複製得到的倉庫地址貼上到自己的本地git命令列內:

輸入即可:git clone 遠端倉庫地址

3等待克隆完成,自己可在自己本地的某資料夾內檢視到克隆下來的專案檔案了

多人使用遠端倉庫(許可權)

當設定了遠端倉庫後,A在一直使用,當B突然加入使用時,難道可以直接拉取專案就能推送本地倉庫內容至遠端倉庫嗎?

肯定是不可能的。那怎麼辦呢?就需要A去給B授權了

例--流程:

A授權B……(管理員加人到專案內)使用遠端倉庫:

1 人員A進入github遠端倉庫內,找到settings-->>Manage access頁面,進行邀請合作人員

2 成功後,將會給被邀請的人傳送邀請連結,被邀請人點選連結進行加入即可。

3 一切完成,正常使用即可

成員互相拉取遠端倉庫內的最新版本內容

命令:git pull 遠端倉庫地址 分支名稱

注意:這個是不需要進行驗證身份的,直接操作即可

實際操作:

Git pull origin master

這裡就表示拉取的是origin(遠端倉庫地址的別名)內的master分支的內容

拉取遠端倉庫內指定的分支最新版本內容完成後,可見git命令列內會顯示提示資訊

SSH免登陸

概念

之前我們使用的都是https的遠端倉庫地址,一般在使用時,推送等操作時都需要驗證的(即使用者名稱\密碼驗證)

而在github中還可進行使用ssh協議進行免登陸操作,如:github內可見ssh地址

作用:在身份驗證時,不用輸入使用者名稱和密碼,原因是因為在ssh協議裡面,驗證是通過“祕鑰”來實現的,祕鑰是成對出現的(私鑰和公鑰),ssh通過驗證私鑰和公鑰的配對情況來驗證是否通過。(如同鑰匙和門鎖一樣的關係)

注意:!!!一般祕鑰是儲存在電腦本地的,當我們通過SSH協議把本地倉庫內容推送到遠端倉庫內時,就會驗證我們本地的“私鑰”和遠端倉庫內的“公鑰”是否配對,這樣才能實現推送

獲取祕鑰的方法:(私鑰和公鑰)

Git命令列內輸入:ssh-keygen,然後一直回車預設即可,出現如下介面資訊為止

從上可見祕鑰的儲存位置:C:\Users\Administrator\.ssh

解釋:

Id_rsa 私鑰,一般預設儲存在我們自己的本地電腦即可

Id_rsa.pub 公鑰,一般是要手動設定在遠端倉庫所在的伺服器的(步驟看後面)

配置祕鑰(私鑰和公鑰)+++++++

私鑰:儲存在我們本地電腦就行了,不用管。

公鑰:

先在本地找到祕鑰所儲存的位置路徑,然後開啟公鑰檔案,複製內容;

然後開啟github,在介面找到使用者設定的位置

跳轉後,找到SSH key設定的位置,進行點選NEW SSH KEYS

然後將本地電腦上獲取到的“公鑰”檔案打開復制內容,在githubSSH KEYS新增頁面,貼上進去即可,

儲存即可(如果彈框驗證登入密碼,輸入即可)

完成後可見,已經設定好了

然後再github遠端倉庫內檢視,可看到SSH的使用地址

配置完成後,使用ssh協議來實現免登入驗證,來實現推送本地內容到遠端倉庫

命令:

git remote add origin-ssh [email protected]:qika2013/git-demo.git這表示給ssh協議的遠端倉庫地,起一個別名(不然每次都這麼長輸入,很麻煩)

git push origin-ssh master   然後進行推送即可

說明:!!!在推送時,命令列介面可能會彈出提示,根據提示輸入yes即可。

可見結果是成功的(即:實現了使用SSH協議的遠端倉庫地址,來講本地倉庫的內容推送到遠端倉庫內,沒有彈出驗證就實現了本地推送至遠端倉庫。完美)

========================================================================

=========================================================================

注:

容易產生的衝突問題:一般在多人蔘與同一專案時,如果兩人同時修改了同一個檔案的同一個地方,會產生衝突。這時候是無法進行推送的

原因:第一個人操作了提交併推送至遠端,此時遠端倉庫內容改變,第二個人再進行提交併推送時,就無法成功了(因為遠端倉庫版本比本地倉庫版本高了,無法提交)

解決:先重新拉取遠端倉庫最新版本內容,然後再提交

如同:

https://github.com/qika2013/git-demo.git這就是表示遠端倉庫的地址

git push遠端倉庫地址 分支名稱

git push遠端倉庫地址別名 分支名稱

git push-u 遠端倉庫地址別名 分支名稱

-u表示記住推送地址和分支,下次推送只需要輸入git push即可了

git remoteadd 遠端倉庫地址別名 遠端倉庫地址