SourceTree的基本使用

來源:互聯網
上載者:User

標籤:訪問   auto   hot   目的   手動   並且   版本控制   之間   ges   

1. SourceTree是什麼
  • 擁有可視化介面的項目版本控制軟體,適用於git專案管理
  • window、mac可用
2. 擷取項目代碼

1. 點擊複製/建立

 

2. 在彈出框中輸入項目地址,http或者ssh地址都可以

 

  如果箭頭指向的倉庫類型表明“這不是一個標準的Git倉庫”,可能是有以下原因

    1) 項目地址擷取錯誤

    2) 沒有項目存取權限

3. 點擊“複製”,等待項目複製完成,完成後,左側只有一個分支master

  複製完成後,得到的是發布後的master源碼,如果想要擷取最新的正在開發中的源碼,需要對項目流進行初始化,點擊“Git工作流程”

  直接點“確定”,擷取develop分支源碼

  開發工作單位都是在develop分支上完成的

4. 分支共有5種類型

  1) master,最終發布版本,整個項目中有且只有一個

  2) develop,項目的開發分支,原則上項目中有且只有一個

  3) feature,功能分支,用於開發一個新的功能

  4) release,預發布版本,介於develop和master之間的一個版本,主要用於測試

  5) hotfix,修複補丁,用於修複master上的bug,直接作用於master

5. master和develop上文中已介紹過,當開發中需要增加一個新的功能時,可建立feature分支,用於增加新功能,並且不影響開發中的develop源碼,當新功能增加完成後,完成feature分支,將新功能合并到develop中,更新develop上的代碼

    1) 建立feature。首先當前開發分支指向develop,點擊“Git工作流程”

選擇“建立新的分支”

在預覽中可看到,feature分支是從develop分出的,輸入功能名稱,點擊確定,項目結構中增加feature分支,並且當前開發分支指向建立的feature分支

  2) 在F_add_feature分支下進行開發工作單位,並提交

以上操作分別增加了feature_1、feature_2、feature_3檔案,共提交3次,現專案檔夾下共三個檔案

當切換為develop分支後,會發現,在develop下並沒有新增的三個檔案,說明在feature下進行操作,並不影響develop分支源碼

  3) 完成feature開發後,將feature中的源碼合并到develop分支。將當前分支指向F_add_feature分支,點擊“Git工作流程”,選擇“完成功能”

預覽中,表明feature分支將合并到develop,點擊確定,進行提交合并,合并成功後

  4) 需要再增加新的功能時,重複以上操作即可

  5) 當多人協作開發時,可能會出現,不同人員對同一檔案進行操作,從而引起合并衝突,對這種情況進行類比,在當前建立兩個feature,分別對feature_1檔案進行修改,然後分別合并

feature_1在feature_1.txt下做如下操作

feature_2在feature_1.txt下做如下操作

先後合并F_feature_1和F_feature_2,會出現衝突

點擊close,查看未認可的變更,提示feature_1.txt出現衝突,

開啟feature_1.txt

 

 

 出現<<<<<<< HEAD、=======、>>>>>>> feature/F_feature_2,HEAD和=號之間表示當前分支下的代碼,=號和>>>>>>> feature/F_feature_2之間表示要合并的分支下的代碼,>>>>>>> feature/F_feature_2表示了要合并的分支的分支名稱,

根據情況區分要保留的代碼,要刪除的代碼,最後再刪除<<<<<<< HEAD、=======、和>>>>>>> feature/F_feature_2

將修改的代碼再進行一次提交

一旦出現feature合并衝突,要合并的feature分支不會被刪除,如F_feature_2,確保合并沒有問題後,可手動刪除F_feature_2

6. 當開發到一定階段,發行就緒測試版本時,可以從develop分支,建立release分支,進入預發布測試階段。點擊“Git工作流程”,選擇“建立新的發布版本”

  

預覽中可以看到,release是從develop分出的,輸入發布版本名‘R_v1.0’,點擊確定

R_v1.0為階段性發布版本,主要用於發布前進行測試,後續的開發工作仍舊在develop上進行,如果在測試過程中發現問題,直接在release上進行修改,修改完成後進行提交

7. 對release分支R_v1.0進行兩次修改後,測試完成,可以進行正式發布,在當前分支指向R_v1.0分支下,點擊“Git工作流程”,選擇“完成發布版本”

 

在預覽中可以看到,R_v1.0向develop和master分別合并,點擊確定,完成正式發布。

完成合併後,預設指向develop為當前分支,master增加多個版本更新,將master分支推送到origin,完成線上發布

8. 正式版本發布後,develop可繼續進行後續開發,當正式版本出現問題時,需要進行問題的修改,可以在master分支建立修改補丁hotfix。將當前分支切換到master,點擊“Git工作流程”,選擇“建立新的修複補丁”

  

預覽中hotfix分支是從master拉去出來的,輸入修複補丁名,點確定

在該分支下進行master的問題修改,修改完成後進行提交。當所有補丁問題修改完成後,點擊“Git工作流程”,選擇“完成修複補丁”

  

預覽中,H_fix_1向master和develop分別合并,點擊確定,完成分支合并。

合并完成後,預設當前分支為develop,master分支有版本需要更新,當前分支切換為master,進行推送,完成補丁修複。

9. 在完成發布版本和完成修複補丁時,如果遇到衝突,可仿照上述5進行衝突修改,再進行後續操作

 

SourceTree的基本使用

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.