GitLab
TMA-GITLAB-1.1.13
Ensure linear history is required
说明
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 命令
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
检查本机
请在您有权审计的机器上运行此命令。扫描为只读操作。
tmaegis scan --target gitlab --level 2