.repo目錄下有什么
安裝好repo书劝,在本地workspace(空目錄)上執(zhí)行repo init命令后雁竞,會從遠程把manifests和repo這兩個git庫拷貝到本地微谓,并自動都放在.repo子目錄中,如圖:(https://private-alipayobjects.alipay.com/alipay-rmsdeploy-image/skylark/png/32092/b35b011f87d7a920.png)
.repo目錄下保存了項目的所有信息束世,所以要拷貝一個項目時,只是需要拷貝這個目錄就可以了帜矾。repo支持從本地已有的.repo中恢復原有的項目翼虫。.repo下的主要內容有:.repo├── manifests # 一個git庫,包含default.xml文件屡萤,用于描述repo所管理的git庫的信息├── manifests.git # manifest這個git庫的實體珍剑,manifest/.git目錄下的所有文件都會鏈接到該目錄├── manifest.xml # 實際使用的xml的軟鏈接。對應的是在manifests目錄下└── repo # 一個git庫死陆,包含repo運行的所有腳本
manifest配置說明
我們來看一下manifest.xml的配置招拙,以錢包在用的一個配置為例進行分段說明:
(https://private-alipayobjects.alipay.com/alipay-rmsdeploy-image/skylark/png/32092/07256c1f36f79cfe.png)1唧瘾、manifest-server:這里定義了manifest的倉庫地址;2别凤、remote:描述了遠程倉庫的基本信息饰序。name是遠程倉庫的名稱,fetch是項目名稱的前綴规哪;
(https://private-alipayobjects.alipay.com/alipay-rmsdeploy-image/skylark/png/32092/8c3c94ca4087da63.png)1、后面全部都是<project>標簽了仍源。每一個repo管理的git庫箫章,就是對應到一個 project 標簽2、path描述的是項目相對于遠程倉庫URL的路徑镜会,同時將作為對應的git庫在本地代碼的路徑;3、name用于定義項目名稱终抽,命名方式采用的是整個項目URL的相對地址戳表。比如 對應的就是gitlab.alipay-inc.com/iwallet/android_portal 倉庫,這個倉庫下載后昼伴,存放在workspace下的portal目錄中匾旭;