2016-02-08 158 views
3

以下是我們將要遵循的git流程。但問題是我們不得不限制人們從開發分支中重新設置功能分支。我們只應讓人們從發佈分支中重新設置他們的功能分支。 限制應該是當試圖合併從開發者分支創建的特徵分支或基於合併的開發者分支的特徵分支的用戶應該被拒絕。這可以做到嗎? enter image description hereGit合併問題

回答

0

如「Authorization for Merge requests」中所述,您有兩種強制授權方式。

因爲在你的情況,你不想變基上主的頂部,我會考慮分叉工作流程,其中master/hotfix分支在一個回購協議,在另一個回購,其中開發人員註冊feature/dev分支。

這樣,開發人員只能向master發出合併請求,集成商可以根據其出處接受/拒絕合併請求。

1

希望我明白你的問題。您正在尋找一種方法來限制開發人員從開發中創建功能分支。

下面的代碼片段將幫助您識別功能分支的父分支。你可能需要添加這個到服務器端的git預接收鉤子腳本。

branch=`git rev-parse --abbrev-ref HEAD` 
parent_branch=`git show-branch -a 2>/dev/null | grep '\*' | grep -v "$branch" | head -n1 | sed 's/.*\[\(.*\)\].*/\1/' | sed 's/[\^~].*//'` 
if $parent_branch="develop"; then 
    echo "please use release as base branch" 
    exit 1 
fi