원격 분기의 삭제를 차단하는 방법이 있습니까?gitolite를 사용하지 않고 git에서 원격 분기 삭제를 방지하는 방법
원격 지점의 삭제를 차단하고 싶지만 코드 검사 및 체크 아웃과 같은 정상적인 흐름은 정상적으로 작동해야합니다!
gitolite를 사용하지 않고! 그것은 가능한가?
도와주세요!
원격 분기의 삭제를 차단하는 방법이 있습니까?gitolite를 사용하지 않고 git에서 원격 분기 삭제를 방지하는 방법
원격 지점의 삭제를 차단하고 싶지만 코드 검사 및 체크 아웃과 같은 정상적인 흐름은 정상적으로 작동해야합니다!
gitolite를 사용하지 않고! 그것은 가능한가?
도와주세요!
예, 가능합니다. 적당한 서버 쪽 자식을 추가하기 만하면됩니다.
아마도 사전 수신 후크를 사용하고 싶을 것입니다. 자세한 내용은 here 또는 here을 참조하십시오.
예 :
#create repositories
git init a
git init --bare b
#add the hook in "b"
echo -e '#!/usr/bin/bash\nread old new ref\ntest $new != 0000000000000000000000000000000000000000' >>b/hooks/pre-receive
chmod +x b/hooks/pre-receive
#create a commit in "a"
cd a
echo foo >test
git add .
git commit -m testcommit
#push it to "b"
git push ../b master
#try to delete remote branch
git push ../b :master
내가 (말하자면, 모든 액세스 제어 엔드 포인트의 일종)는 gitolite을 피할 수있는 이유는 모르겠지만,이 샘플이 사전을 - 수신 후크. * git config 항목을 사용하여 간단한 액세스 제어를 수행하는 스크립트 here. 그것은 gitolite만큼 화려하지는 않지만, 내가 한 번 염두에 둔 몇 가지 일을합니다.) = 자신감을 고취 간신히 TESTED` 아니라 : :-)
refs/heads/*,delete)
# delete branch
if [ "$allowdeletebranch" != "true" ]; then
echo "*** Deleting a branch is not allowed in this repository" >&2
exit 1
fi
업데이트 훅이 추가이 다른 사람에게 너무
'참고 도움이 될 것입니다 내 문제 희망을 해결했다. IMO gitolote 또는 유사품을 사용하지 않는 것이 노력/시간 낭비 일뿐입니다. 필요한 모든 것이 하나의 고리 일 때 모든 것을 바꾸는 것이 그 목표를 달성하는 데 매우 관여하는 방법입니다. – AD7six