Git的學習

Git的學習

以前使用Git進行代碼管理,都是使用TortoiseGit和SVN進行源碼的拉取、推送、合併。在小型的項目裏面,一般只用一個master分支即可,沒有深究Git其他功能。最近的項目比較大,需要注意代碼安全,因此對項目進行了模塊劃分,同時對各開發人員分配了不同的權限,配合不同分支使用,下面記錄使用的學習心得。

一、模塊

根據不同功能,可以對不同的代碼劃分模塊。整個項目是父模塊,內部再劃分子模塊。
如:
項目根目錄作爲父模塊,其內部給lib庫文件夾加一個子模塊;給debug文件夾加一個子模塊;
另外根據功能劃分,建立不同子模塊;
每個子模塊都有自己的工程文件,.vcxproj文件;
各開發人員只能訪問自己的模塊代碼和公共模塊代碼,不可查看他人的模塊代碼;
各模塊如果需要引用,則編譯成dll引用;

二、分支

爲了確保代碼可用,推送到master分支的代碼必須由管理員合併推送,其餘開發人員在master主分支上的權限僅爲拉取,不可推送。
因此,需要創建一個developer分支,各開發者都有權推送代碼到此分支上。

子模塊的分支和父模塊的分支是兩個獨立的分支樹,如下圖:

父模塊:
父模塊分支樹
父模塊有三個遠端分支,主分支master,開發者分支developer,自動編譯的分支jenkins

而到子模塊,其分支樹爲:
子模塊分支
子模塊中,主分支爲master,開發者分支developer_map_symbol;

此模塊爲無管理員權限的普通開發人員負責的子模塊,由於沒有master的推送權限,必須新建一個分支用於推送代碼。【但實際上我覺得,可以給子模塊負責人當前模塊的管理員權限,就不用再建立一個分支。反正也是本人負責管理自己的模塊】

子模塊和父模塊是有不同的分支的,在拉取代碼時,需要對父模塊和子模塊依次拉取。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章