文章目錄
一、遠程庫創建
初始化本地庫
創建一個名爲GitHome1
的本地庫,使用git init命令
進行初始化,創建jiuyangzhenjing.txt文件
後,將其添加到暫存區並提交至本地庫。
創建遠程庫
在GitHub上新建一個repository(倉庫)
,爲防止混淆,這裏也使用GItHome1
的名字。
在本地創建遠程庫地址別名
使用git remote -v命令
可以查看當前起的別名有哪些;使用git remote add [別名] [遠程庫地址]
可以爲遠程庫起別名。
遠程庫的地址查看方式如下:
二、團隊內協作
push推送操作
推送命令:git push [遠程庫別名] 分支名
輸入命令後,在彈出的頁面輸入自己GitHub的賬號密碼就會自動傳輸到遠程庫。
clone克隆操作
克隆命令:git clone [倉庫地址]
- 可以完整的把遠程庫下載到本地。
- 繼承push前爲遠程地址起的別名。
- 初始化本地庫。
邀請別加入團隊
將邀請鏈接發送給被邀請人後,被邀請人接受邀請,就可以加入團隊了。
此時被邀請者將文件clone到自己的本地庫進行修改後,就可以通過push命令上傳到遠程庫GitHub了。
被邀請者使用push命令推送時,並不提示登錄賬號和密碼,這是因爲windows上的憑據管理器記住了賬號密碼,當需要更換別的賬號時,可以將此處刪掉。
pull遠程庫修改的拉取
pull命令=fetch命令+merge命令;當所做的修改比較簡單,不容易產生衝突時,使用pull命令即可,否則使用可以先使用fetch抓取下來看一看,然後再使用merge合併。
-
抓取(讀操作):
git fetch [遠程庫地址別名] [遠程分支名]
fetch抓取操作是隻讀操作,不會改工作區的文件,此時若想看抓取到的文件,可以切換分支到遠程庫地址別名/遠程分支名
,再進行cat查看。
-
合併:
git merge [遠程庫地址別名/遠程分支名]
將抓取到的文件合併到本地倉庫。
-
二合一命令:
git pull [遠程庫地址別名] [遠程分支名]
協同開發時衝突的解決
- 如果不是基於GitHub遠程庫的最新版所做的修改,不能推送,必須先拉取。
- 拉取下來後如果進入衝突狀態,則按照
分支衝突解決
操作解決即可。
三、跨團隊協作操作演示
團隊外的人根據項目地址,找到Fork
按鈕並點擊,然後clone克隆
項目到本地,修改後push推送
到自己的遠程庫。
自己的遠程庫修改後,發起Pull Request
請求:
此時團隊內部人員使用git pull [遠程庫別名] [遠程分支名]
將項目拉取到本地,就結束了跨團隊協作的整個過程。
四、SSH登錄
Windows10在憑據管理
的地方爲我們保存了賬號和密碼,但如果是別的沒有憑據管理的系統,則基於Http地址進行操作時,系統又沒有記住用戶名和密碼,則每次push時都需要登錄提供用戶名和密碼,可以使用SSH避免每次登錄都輸入賬號和密碼。
總結起來有以下幾步:
- 在家目錄,刪除
.ssh
目錄。 - 運行命令生成.ssh 密鑰目錄:
ssh-keygen -t rsa -C [GitHub用戶名]
。 - 進入
.ssh
目錄查看文件列表,查看並複製id_rsa.pub
文件的內容:cat id_rsa.pub
。 - 登錄 GitHub,點擊用戶頭像→Settings→SSH and GPG,New SSH Key,輸入複製的密鑰信息。
- 在Git bash 創建遠程地址別名
origin_ssh
:git remote add origin_ssh [遠程庫的ssh地址]
- 推送文件進行測試:
git push origin_ssh master
下面是詳細演示:
使用cat查看生成的id_rsa.pub文件
,複製ssh代碼: