idea中github多人協同工作截圖篇(篇幅較長,多圖預警)
1.目標:
- 組長
- 完成idea上GitHub賬號的登陸
- 在idea上新建遠端倉庫
- 在GitHub上建立組織
- 在遠端倉庫關聯組織,新增team
- 給team分發許可權
- 組員
- 讓team中其他成員可以clone倉庫程式碼
- clone在分支上開發
- 分支的合併
- clone後可以上傳到遠端倉庫
2.操作
1. 完成idea上GitHub賬號的登陸
-
1.在github中建立一個賬號:https://github.com/join?source=header-home
-
2.下載並安裝git:
-
3.在IDEA中設定Git,在File–>Setting->Version Control–>Git–>Path to Git executable選擇你的git安裝後的git.exe檔案,然後點選Test,測試是否設定成功
-
4.idea中登陸github
-
登陸成功
2. 在idea上新建遠端倉庫
- 想要遠端倉庫必須本地有專案,所以下面新建一個已經搭建好的springboot框架的maven專案。
- 演示idea的快速搭建springboot專案。
- 使用最簡單的web模組
- 工程名
- 完成專案建立。
- 忽略無效的配置檔案非常重要
https://blog.csdn.net/weixin_43067223/article/details/84635541
上傳到遠端倉庫
- VCS–>Import into Version Control–>Share Project on GitHub
- 這一步操作相當於初始化本地倉庫,填寫倉庫名稱
- Share
- 上傳成功
- 點選可以直接開啟遠端倉庫
3. 在GitHub上建立組織
- 其他預設
- 拉人(可省略)
- 義務填寫組織作用(可省略)
- 給這個組織新增小組
- 加組
- 給組裡拉人
- 對方的郵箱的郵件就會有以下資訊
- 點選Join
- 對方就會加入小組
4. 在遠端倉庫關聯組織,新增team
- 進入個人首頁
- 由於這裡是個人的倉庫,所以組織裡的小組並無法上傳程式碼,但是克隆程式碼還是可以的,所以現在我們就把這個倉庫新增一個組織,給組織新增一個小組。
- 點入倉庫
- 點入setting
- 拉到setting的最下面
- 點選transfer
- 把你的小組加進去
- 跳到主頁面,此時發現該倉庫已經屬於該組織
- 點選倉庫,進入setting
- 授權
- 授權完畢,現在只要是該組的成員就可以任意拉取上傳專案了。
6. 讓team中其他成員可以clone倉庫程式碼
- 檢視切換到idea
或者
- 沒有GitHub,點選git也行
- 複製這個倉庫地址
- 點選clone
- 本第倉庫已經建立
- 我習慣性給這個叫設定maven結構的各檔案格式
- 設定jdk
- 設定格式
- ok了,此時已經完全克隆下來了
7. clone在分支上開發
- 此時克隆下來的是主分支裡面的檔案,但是不能在主分支裡面開發,這樣會影響到遠端倉庫的程式碼質量。而且很容易發生衝突。所以要在新分支裡面開發。
- 新建分支
- idea的介面的右下角
點選–》NEW Branch
- 這時點選右下角
就有分支切換,可以master和dev分支自由切換。像一隻開心的馬六甲。 - 一頓亂操作之後不能直接切換到主分支進行提交,需要在dev分支上,add+commit操作;然後在切換到master分支進行合併。
- commit之後。
分支概念的理解
-
分支的建立就可以將本地倉庫的程式碼完全複製一份,這時在分支上開發,然後合併到master分支。這個時候就有問題了,如果分支上開發,合併到主分支和直接在主分支開發有什麼區別?
-
這個問題問的好!
-
以本人拙見:
遠端倉庫的版本叫:馬六甲1
A從遠端倉庫克隆下來,A的本地倉庫的版本:馬六甲1
B從遠端倉庫克隆下來,B的本地倉庫的版本:馬六甲1
A在他的本地一通寫程式碼,然後add,commit,push成功!
然後這時遠端倉庫的版本叫:馬六甲2
A的本地倉庫的版本:馬六甲2
B的本地倉庫版本還是:馬六甲1,主分支:master
B這時新建分支,dev,在dev上一頓亂操作,add,commit
B切換到master,然後一個pull,拉取遠端倉庫:馬六甲2
這時B的master的分支為:馬六甲2
然後這個時候,B在合併自己的master分支和dev分支。
有衝突在自己本地就能解決,解決好了在上傳到,遠端倉庫。 -
而在本地直接在master分支開發的話,沒有合併分支的概念。衝突問題我覺的是一大難題,而且分支可以在任何時候都可以建立,可以隨時退回到任何一個版本,很容易回到你想儲存的程式碼版本。
-
所以在組員開發專案的同時,需要遵循一下操作。那麼可以避免很多麻煩。(本人實踐獲得,不喜勿噴)
-
組員:
1.先從遠端倉庫pull下來—master分支;
2.在本地新建分支—dev分支;
3.在dev分支做開發(開發完成後)—add&commit到緩衝區
4.開發完切換到master分支—從遠端倉庫pull下來
5.然後在master分支—合併dev分支
5.1 master分支add&commit
6.(合併分支時)有衝突解決衝突
7.(合併分支時)沒用衝突,master分支push
8. 分支的合併
- 分支的合併是master分支向dev分支合併(這裡舉例),就是將dev的分支合併到master;
- 首先切換到master分支(dev分支必須add+commit,而且有改變);
- 合併操作
- 合併
- 和併成功
- 然後直接push,已經add+commit過了
- 等待
- 成功
如有問題:多多指正!感謝!