TMAegisBeta
更多 gitlab 規則

GitLab

TMA-GITLAB-1.1.13

Ensure linear history is required

中等級 2自動化gitlab

說明

Linear history is the name for Git history where all commits are listed in chronological order, one after another. Such history exists if a pull request is merged either by rebase merge (re-order the commits history) or squash merge (squashes all commits to one). Ensure that linear history is required by requiring the use of rebase or squash merge when merging a pull request. Enforcing linear history produces a clear record of activity, and as such it offers specific advantages: it is easier to follow, easier to revert a change, and bugs can be found more easily.

檢查方式

稽核方法: Shell 指令

shell
command -v glab >/dev/null 2>&1 || exit 1
glab auth status >/dev/null 2>&1 || exit 1
proj=$(glab repo view -F json 2>/dev/null) || exit 1
printf "%s" "$proj" | grep -q '"id":' && echo compliant || echo non-compliant
預期輸出
compliant

修補方式

修補方法: 操作指南或基礎設施修補檔

For every project, perform the following steps: - Navigate to your project - In the sidebar, select Settings > Repository - Under 'Merge method', select 'Fast-forward merge'.

屬性

作業系統
不限
標籤
devsecopsgitlab
參考資料
CIS GitLab Benchmark v1.0.1 - 1.1.13 Ensure linear history is required

檢查此主機

請在您有權稽核的機器上執行此指令。掃描為唯讀操作。

shell
tmaegis scan --target gitlab --level 2