⑴ Git子模塊使用說明
介紹
在開發前端應用時,不同應用之間可能存在共同的腳本或樣式代碼。為了減少重復開發,可以將這些公共代碼提取出來,形成獨立的 git 子模塊,便於調用和管理。
軟體架構
該倉庫的代碼將作為 git 子模塊,被引用到其他倉庫中,但無法獨立運行。
使用說明
1. 添加子模塊
使用命令 git submole add [倉庫 url] [項目中的路徑],執行後會在指定路徑創建以最後一級名稱命名的文件夾。
注意:子模塊的路徑不能與已存在的文件夾沖突,否則會報錯。
2. 更新子模塊
可以在獨立的項目中修改子模塊代碼,也可以在項目中直接修改。修改完成後,需要將更改提交到遠程倉庫,其他項目才能同步最新的代碼。
3. 刪除子模塊
在 Jenkins 中使用子模塊時,需要配置兩個地方:
1. 在構建前執行以下命令
2. 配置憑證,以便拉取子模塊代碼
注意事項
參考資料
Git: submole 子模塊簡明教程
⑵ Jenkins集成GitLab的正確姿勢,實現Git代碼提交觸發CI/CD
為了實現Jenkins與GitLab之間的集成,以便在Git代碼提交時觸發CI/CD流程,我們需遵循以下步驟。首先,安裝GitLab插件。
在配置Jenkins伺服器時,創建GitLab憑證,並將其填充到「Manage Jenkins->System->enable authentication for '/project' end-point」中。此配置為Jenkins job提供了訪問GitLab的憑證,在Jenkinsfile中使用該憑證。
創建Jenkins job,選擇源代碼管理為Git,填寫GitLab上源碼倉庫地址。設置構建觸發器為「Build when a change is pushed to GitLab」,並獲取GitLab webhook URL。在高級設置中,允許特定分支的構建,並生成用於防止他人觸發Jenkins的回調URL的token。
當遇到高版本Jenkins的403錯誤時,可修改配置以關閉防跨站點請求偽造(CSRF)保護。在容器中,編輯Jenkins.sh腳本,在執行java命令前添加參數-Dhudson.security.csrf..DISABLE_CSRF_PROTECTION=true。
配置GitLab webhook以接收代碼提交通知。在GitLab repo的Settings-Integrations中,填寫生成的URL和Secret Token,點擊「Add webhook」。檢查Jenkins是否有自動構建記錄。
為了在GitLab上查看Jenkins job的執行狀態,需要在上述步驟的基礎上進行額外配置。確保Jenkins與GitLab之間的集成完全運行並正常接收代碼提交事件。參考文檔以獲取詳細說明。