Files
team/.gitea/workflows/check-path.yml

29 lines
818 B
YAML

name: 检查提交路径权限
on: [push, pull_request]
jobs:
check-path:
name: 校验提交路径
runs-on: gitea-runner
steps:
- name: 拉取代码
uses: actions/checkout@v3
- name: 检查是否修改了他人目录
run: |
USERNAME=${GITEA_USERNAME:-$(git log -1 --pretty=format:'%an')}
echo "当前提交用户:$USERNAME"
CHANGED_DIRS=$(git diff --name-only HEAD~1 | xargs -n1 dirname | sort -u)
echo "修改的目录有:$CHANGED_DIRS"
for dir in $CHANGED_DIRS; do
if [[ "$dir" != "$USERNAME" && ! "$dir" =~ ^\. ]]; then
echo "错误:你无权修改 '$dir' 目录!"
exit 1
fi
done
echo "✅ 提交通过路径权限检查。"