一、建立專案與管理
建立專案和管理專案都是管理賬號需要做的事情,如果只是合作開發不進行管理,只需要瀏覽第二部分的內容即可。
1.建立專案
登入程式碼託管網站,點選新增專案,如下圖所示:
填寫相應的專案資訊,如下圖所示:
完成會生成專案的url,複製url後面會使用到,使用指令時需要注意每個專案的都不一樣,如下圖所示:
在本地建立專案檔案,並建立專案說明檔案“README.md”,如下圖所示:
開啟git執行如下命令操作
初始化git bash客戶端,進入建立的專案資料夾執行如下命令(也可以想專案資料夾中右鍵開啟,省去cd命令)
git init
把檔案新增到緩衝區,並新增註釋資訊
git add README.md
git commit -m "first commit"
注:在 Linux 系統中,commit 資訊使用單引號 ',Windows 系統,commit 資訊使用雙引號 "。
推送建立的倉庫,其中url是之前複製的
git remote add origin url
git push -u origin master
執行以上命令操作後,專案便建立成功了,如下圖所示:
2.新增協作者
點選倉庫設定,新增協作者,及協作者的操作許可權,如下圖所示:
這樣簡單的git專案就建立完成了。能訪問到專案的協作者便可以開始專案的編寫了。
3.合併請求管理
當有人發起合併請求時,會有相應的資訊提醒,可以檢視具體的請求說明,如下圖所示:
檢視明細後,如果覺得沒問題後,點選合併請求即可完成程式碼的合併。如下圖所示:
合併完成後,協作人員只需要拉取一下主分支的程式碼即更新本次更改的內容。
二、git倉庫使用
1.派生主分支
登入協作者的賬號即可使用相應的專案,如下圖所示:
選擇自己需要的專案並單擊進入,此時便可以看到克隆的url,合作中不建議直接克隆主分支的專案,需要派生自己的分支,如下圖所示:
派生完成後會發現專案的路徑與主分支的不同,複製個人派生的url,如下圖所示:
2.配置遠端倉庫
開啟git bash 使用git clone url命令克隆分支倉庫,其中url是個人派生出來的url
git clone url
新增遠端倉庫fork的上游主庫,其中rul是主分支的url
git remote add upstream url
檢視倉庫的設定地址
git remote -v
能看到origin和upstream的地址,則說明配置成功,如圖所示:
到此倉庫配置已經完成,接下來便可以進行開發了。
2.更新本地倉庫
每次編寫程式碼時,記得同步遠端倉庫到本地資源庫,保證本地倉庫和遠端倉庫的程式碼一直性
git pull upstream master
git pull origin master
注意:其中origin是更新個人分支到本地倉庫,upstream是更新主分支到本地資源庫,因為個人分支的程式碼多數只能自己更改,一般情況下個人分支的程式碼和本地基本一致所以更新origin的頻率會少一些。主要是主分支由於協作的人較多,程式碼變動很大。
3.提交程式碼
提交程式碼之前記得再次同步主分支的程式碼,也就是說執行以下步驟是記得使用git pull upstream master
,這樣能保證在合併時避免和主分支的程式碼產生衝突。
新增所有更新至本地快取
git add .
檢視快取區狀態
git status
提交到說明,便於版本管理
git commit -m "提交說明"
提交到遠端個人倉庫(個人倉庫名+分支名)
git push origin master
這樣已經完成程式碼的提交,提交完成後還需要將自己分支的程式碼合併到主分支。
4.程式碼合併
去遠端管理倉庫進入到個人分支,點選建立合併請求,如下圖所示:
選擇需要合併到的分支以及拉去程式碼的位置,如下圖所示:
完成後點選建立合併請求並填寫合併請求的說明已經更改程式碼的功能,便於管理員對程式碼進行管理。如
下圖所示:
到此個人開發的流程已經完成了,最後只需要理員同意合併請求便可以在主分支看到個人更改的程式碼。
三、git其他指令
1.強制拉取覆蓋
強制拉取個人分支,並覆蓋本地倉庫,主要用於自己刪除本地檔案後無法通過更新下載已刪除的檔案時使用,當然可以回滾至上一版本。
git fetch --all
git reset --hard origin/master
git pull
2.本地指令
git config --list #檢視配置資訊
git init #初始化倉庫
git add 1.txt #新增檔案至快取
git add . #新增所有檔案至快取
git rm 1.txt #刪除檔案
git status #檢視倉庫狀態
git commit –m "test" #提交說明
git rm 1.txt #刪除檔案
git commit -m “test” #刪除相應的提交
git diff a.txt #檢視a.txt檔案更改的內容
git log #檢視提交記錄
git reset --hard HEAD^ #回滾上一個版本
git reset --hard HEAD~n #回滾n個版本
git xxx --help #檢視指令幫助
3.本地倉庫上傳至遠端倉庫
git pull origin master #拉取遠端主分支
git pull --rebase origin master #拉取本地分支
git push -u origin master #提交程式碼至個人分支
git push -u -f origin master #強制上傳程式碼至個人分支
4.遠端倉庫指令
git clone url #克隆倉庫
git remote add #新增/關聯一個遠端倉庫,預設名是origin
git remote remove origin #刪除遠端庫的 origin 別名
git remote add upstream url #新增一個將被同步給fork遠端的上游倉庫
git fetch upstream #從上游倉庫fetch分支和提交點,傳送到本地,並會被儲存在一個本地分支 upstream/master
git remote #檢視遠端庫的別名
git remote –v #檢視遠端庫的別名和倉庫地址
git push origin master #把本地 master 分支推送到別名為 origin 的遠端庫
git branch #檢視當前所有的分支,預設只有master 分支
git branch test #建立 test 分支
git branch –d test #刪除 test 分支
git checkout test #從當前分支切換到 test 分支
git checkout –b dev #建立 dev 分支,並切換到 dev 分支上
git merge dev #在當前分支上合併 dev 分支
git merge upstream/master #把 upstream/master 分支合併到本地 master 上
git merge upstream/dev #把 upstream/dev 分支合併到本地 dev 上
注:由於本次的文件是在本地編寫的,後來圖片不小心被我刪除了,所以我在PDF文件中截圖的,導致圖片有點模糊,希望小夥伴們不要建議。