如何 block/restrict 完全推送到远程主机
How to block/restrict push to remote master totally
- 我想限制从任何分支到我的主分支的任何类型的推送。
- 我想从客户端完成所有这些
- 比如我有3个分支master mtest mtest2
- 我不想 "git push -u origin master" 在任何分支机构工作。
- 如果我检查了 mtest 但如果我 运行 错误 "git push -u origin master" 这应该不起作用。
我写了pre-push hook,但是如果当前分支是master,它只会停止推送
如果你 运行 "git push -u origin master" 并且你在 mtest 分支中,它就不起作用。
我还尝试查看我们是否可以获得推送参数,以便我们可以知道推送指向哪个分支,但不幸的是,我没有在预推送挂钩收到的参数中得到它。
我需要一种方法来完全阻止推送到 master 分支。
但是推送到其他分支必须照常进行。
任何方法都可以。
- 打开 GitHub 存储库
- 点击
Settings
- 点击边栏中的
Branches
- 点击
Add rule
- 启用
Require pull request reviews before merging
或Require status checks to pass before merging
查看有关预推钩子的文档,以及随任何回购协议提供的 .git/hooks/pre-push.sample
:
有关目标引用的信息通过标准输入传递,而不是通过 sys.argv
- 我想限制从任何分支到我的主分支的任何类型的推送。
- 我想从客户端完成所有这些
- 比如我有3个分支master mtest mtest2
- 我不想 "git push -u origin master" 在任何分支机构工作。
- 如果我检查了 mtest 但如果我 运行 错误 "git push -u origin master" 这应该不起作用。
我写了pre-push hook,但是如果当前分支是master,它只会停止推送 如果你 运行 "git push -u origin master" 并且你在 mtest 分支中,它就不起作用。 我还尝试查看我们是否可以获得推送参数,以便我们可以知道推送指向哪个分支,但不幸的是,我没有在预推送挂钩收到的参数中得到它。
我需要一种方法来完全阻止推送到 master 分支。 但是推送到其他分支必须照常进行。
任何方法都可以。
- 打开 GitHub 存储库
- 点击
Settings
- 点击边栏中的
Branches
- 点击
Add rule
- 启用
Require pull request reviews before merging
或Require status checks to pass before merging
查看有关预推钩子的文档,以及随任何回购协议提供的 .git/hooks/pre-push.sample
:
有关目标引用的信息通过标准输入传递,而不是通过 sys.argv