jenkins+Git子模塊自動拉取代碼
添加Git子模塊
先克隆想要添加子模塊的倉庫git clone ssh://git@ip:port/user/project.git
,這個是主目錄。
進入倉庫,添加子模塊git submodule add ssh://git@ip:port/user/project.git
,和主倉庫不同。
ls
查看,會有.gitmodules
和子模塊的項目名。
將生成的文件和目錄push到主倉庫中。
克隆有子模塊的倉庫
添加過子模塊的倉庫,如果想重新克隆,和普通克隆一樣,不過克隆后需要在倉庫目錄下執行
git submodule init
和git submodule update
,如果不執行,子模塊中會沒有文件。
更改子模塊的分支
切換到子模塊目錄,默認子模塊是master分支,git submodule foreach git checkout dev
,
然后使用git submodule foreach git pull
切換分支。
需要在jenkins
任務的構建步驟
中添加git submodule init
和git submodule update
,以及上述操作(寫在這兩個命令后面),
jenkins
才能拉取到代碼。
submodule可以進行tag和merge
git submodule foreach
可以分別對子模塊進行操作, 所以對所有子模塊進行tag
和merge
操作, 就相當於對總項目進行相應的操作.