GitLab-确定分支是否受terminal git命令的保护

GitLab-确定分支是否受terminal git命令的保护,git,gitlab,Git,Gitlab,是否有一种方法可以使用git命令确定GitLab中的分支是否受到保护 最好是一种确定受保护状态的方法,而不尝试做非法的事情并收到警告。受保护的分支不是git功能 这是gitlab或github等工具的一个特性 也许您可以通过gitlab api获得存储库的受保护分支,并在推送之前进行验证 使用git命令行是无法做到这一点的。 但是,还有一种选择。您可以安装一个pypi模块: pip install python-gitlab 是文档,您可以参考 要获取有关受保护分支的信息,可以执行以下操作:

是否有一种方法可以使用
git
命令确定GitLab中的分支是否受到保护


最好是一种确定受保护状态的方法,而不尝试做非法的事情并收到警告。

受保护的分支不是git功能

这是gitlab或github等工具的一个特性

也许您可以通过gitlab api获得存储库的受保护分支,并在推送之前进行验证


使用git命令行是无法做到这一点的。

但是,还有一种选择。您可以安装一个pypi模块:

pip install python-gitlab
是文档,您可以参考

要获取有关受保护分支的信息,可以执行以下操作:

p_branches = project.protectedbranches.list()
使用python

这是我发现的另一个问题,与你的问题相似

编辑:

是gitlab api。这个 获取受保护分支的端点如下所示:

/projects/:id/protected_branches

受保护的ness实际上不是Git的东西,它是一个附加组件。不过,可能有一些web端点使得使用
curl
或类似的方法进行查询变得容易。谢谢,我将研究使用curl。这就是为什么我指定在GitLab中保护分支。我现在正在看api。尝试对受保护的分支执行非法操作,如
git push--delete origin
会警告只能从web界面删除这些分支。我想要一种只使用Git的方法,这种方法可以做到这一点,而不尝试做一些非法的事情,比如使用上面的命令删除它。因为OP没有提到任何关于Python的内容,所以关于API的更不可知论的答案可能更合适。谢谢cris。Gitlab api在这里可用-具有端点-/projects/:id/protected\u分支