git服务器上防止切换分支

【字号: 日期:2023-09-07浏览:16作者:雯心

问题描述

问题场景:服务器上的git分支为master,但是有时候可能误操作切到别的分支(但这不是问题的重点)。就是问问大神有没有什么办法,在服务器上默认为master分支,当用git checkout 切换别的分支的时候提示输入密码。

问题解答

回答1:

我猜你是把直接用git来部署了吧,不是 @xiaoyao9184 说的那种建git服务器的情况。

最简单暴力是让.git/HEAD不可修改:

sudo chattr +i .git/HEAD

但是不行,虽然不能换分支,但是文件会还是被checkout。

或者可以试一下post-checkout hook,checkout之后看是不是master,不是就切回去。

实在不行就fork一个git。

回答2:

甭想,服务器上的是裸库,不存在切换分支概念,gitlab也只能做到分支保护非法提交,权限也就精确到库级别

相关文章: