GitLab使用筆記
MVC5→MVC6 不是昇版而是世代轉換。三大項應用功能與其他
軟體專案開發管理
以Scrum方法論為中心,當然客製化的彈性很高。
比較特別的,其 Group 在此是 Project 的分群,不是人的群組,這與一般的認知不同。
然而視覺化報表在免費版都看不到不知是否有提供。
燃盡圖(burndown chart)於 GitLab 收費版才支援。--- 可惜呀
原始碼版控
使用Git做版控。
使用上與GitHub幾乎相同。
軟體CI/CD
GitLab-CI
, 提供一套CI/CD框架用以自動部署。依組態檔『.gitlab-ci.yml』編寫的 scripts 執行。
各類型系統的 CI/CD scripts 可說全然不同,有非常複雜的排列組合,比如:程式語言 x 編譯器與資源 x 部署通道 x 執行平台等等。且要先確定GitLab已有相關支援才能實作。
為避免出現系統開發好卻無法(或很難)部署的冏況,在實務上程序建議:
必需先確認執行標的部署環境。
並製作好上傳原始碼、組譯與部署的系統雛型後才能正式啟動開發工作。
其他功能
snippets
專案的 wiki
沒圖沒真象
沒圖沒真象,還是把試用的 .gitlab-ci.yml 留一下吧。此例是 ReactApp 的 CI 沒有CD。語法閱讀上還是有一些參考性的。
image: node # 镜像选择 node,因为我们需要运行 npm 命令
before_script:
- npm install # 在执行我们的构建任务前先安装依赖
cache:
paths:
- node_modules/ # 缓存 node_modules 目录,可有可无
pages: # 这里必须写 pages 是一个特殊的任务名称,只有用 pages 才能托管我们的静态站点
stage: deploy # 这里可以写也可以不写,不写的话默认是 test
script:
- npm run build # 运行构建命令
artifacts:
paths:
- public # 设置站点根目录
only:
- master # 只有 master 分支被 push 的时候会触发
結論
GitLab 本身還不錯,然其免費版是不足以用到真正的專案上的。
另外,試用只做到CI沒做CD,故不在此紀錄了。估計實務不會採用,因政策方向尚不明確做了應該無法續用,且CI/CD scripts 也會依各自模組的版本昇級又調整,現在弄好大概只會過時而己。
Last updated