首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用gitosis指定每个分支的权限?

您好!关于使用 gitosis 指定每个分支的权限,我们可以通过以下步骤来实现:

  1. 安装 gitosis:首先,确保您已经安装了 git 和 gitosis。如果没有,请使用以下命令安装:
代码语言:txt
复制
sudo apt-get install git gitosis
  1. 配置 gitosis:在 gitosis 配置文件中,您可以指定每个用户对每个仓库的访问权限。您可以在 /etc/gitosis.conf 文件中配置权限。例如:
代码语言:txt
复制
[group mygroup]
members = user1 user2
writable = repo1

[group mygroup2]
members = user2
writable = repo2

在上面的示例中,mygroupmygroup2 是两个不同的组,每个组都有不同的成员和可写仓库。

  1. 为每个分支指定权限:在 gitosis 中,您可以为每个分支指定不同的权限。例如,您可以允许某些用户只能推送到特定的分支,而其他用户则可以推送到其他分支。您可以在 gitosis 配置文件中指定每个用户对每个分支的访问权限。例如:
代码语言:txt
复制
[group mygroup]
members = user1 user2
writable = repo1=refs/heads/master:refs/heads/develop

[group mygroup2]
members = user2
writable = repo2=refs/heads/master

在上面的示例中,mygroup 中的用户可以推送到 repo1masterdevelop 分支,而 mygroup2 中的用户只能推送到 repo2master 分支。

  1. 应用更改:当您更改 gitosis 配置文件时,您需要将更改应用到 gitosis 服务器。您可以使用以下命令应用更改:
代码语言:txt
复制
sudo gitosis-init < /etc/gitosis.conf

这将重新生成 gitosis 的配置文件,并重新启动 gitosis 服务。

总之,使用 gitosis 指定每个分支的权限非常简单。您只需要在 gitosis 配置文件中指定每个用户和每个仓库的权限,然后将更改应用到 gitosis 服务器即可。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

git版本控制gitosis的安装与使用

gitosis是Git下的权限管理工具,通过一个特殊的仓库(gitosis-admin.git)对Git权限进行管理。...(2)使用python进行安装 root@wz:/home/git# python gitosis/setup.py install (3)将authorized_keys移除或重新命名为authorized_keys.bak...gitosis-admin目录结构如下: gitosis.conf文件是用来设置用户、仓库和权限的控制文件。 keydir 目录则是保存所有具有访问权限用户公钥的地方每人一个。...(3)修改 gitosis.conf配置文件并同步到服务端:其操作方式与普通的Git仓库一致, 提交到服务端之后,查看服务端: (4)如果是多人协助开发同用一个版本库,则需要将他们每个人的公钥文件添加到...文件的命名将决定在gitosis.conf配置文件中的称呼。

87010
  • 使用gitosis来配置管理git服务器端

    安装git emerge -av dev-util/git 2.安装gitosis git环境默认是可以直接使用的,但需要为每个成员开ssh权限帐号,且各个仓库之间的交叉权限管理很麻烦,所以需要使用gitosis..., 它无需为每个开发人员开设ssh帐号,安全方便。...生成公钥 在客户端使用 ssh-keygen -t rsa 来生成ssh的key,注意你的主机名需要是全部英文字符,不能有下划线或者.之类的特殊字符,否则后面在服务端生成版本库的时候会报错。...是gitosis的配置文件,用于配置用户和权限 keydir/是所有组成员的公钥 我们可以在本地修改配置更改权限,然后push到服务端后,服务器端就立刻生效 7.创建新的repositories 打开gitosis.conf...文件,你将看到 [group gitosis-admin] writable = gitosis-admin members = elton@macbook 这个是管理组的权限,members中的用户名就是刚才上传的公钥里面的用户名

    97220

    搭建Git服务器

    但是对于某些视源代码如生命的商业公司来说,既不想公开源代码,又舍不得给GitHub交保护费,那就只能自己搭建一台Git服务器作为私有仓库使用。...git,但无法登录shell,因为我们为git用户指定的git-shell每次一登录就自动退出。...如果团队有几百号人,就没法这么玩了,这时,可以用Gitosis来管理公钥。 这里我们不介绍怎么玩Gitosis了,几百号人的团队基本都在500强了,相信找个高水平的Linux管理员问题不大。...管理权限 有很多不但视源代码如生命,而且视员工为窃贼的公司,会在版本控制系统里设置一套完善的权限控制,每个人是否有读写权限会精确到每个分支甚至每个目录下。...小结 搭建Git服务器非常简单,通常10分钟即可完成; 要方便管理公钥,用Gitosis; 要像SVN那样变态地控制权限,用Gitolite。

    2.8K50

    群晖给指定目录、指定用户设置权限的教程

    假设要配置一个用户“渣男”只能对共享文件夹里面的某个第三级目录”萝莉”进行读写等全部操作, 目录结构如下:\共享文件夹\照骗\萝莉 操作步骤: 1、通过“控制面板”→“用户账号”,给用户渣男创建一个空权限的新...2、打开File Station,按照顺序,对于一二级目录:“共享文件夹“和”照骗”目录添加zhanan的访问权限。...右键→属性→权限,分别加上zhanan的读取权限全选,且仅应用于当前目录,如下图: 3、对于最终目录“萝莉”,给zhanan加上读写权限。...依然右键→属性→权限,选择用户id,勾选“读取”和“写入权限”,且应用于全部即可。...如下图: 4、测试成功,zhanan用户无法看到共享目录一二级目录下的其他文件夹,,只能看到我们授权读写的第三级目录“萝莉”。 ​ 若有收获,就点个赞吧

    12.6K20

    Git最全系列教程(四)

    如果到该项目目录中运行 git init 命令,并加上 --shared 选项,那么 Git 会自动修改该仓库目录的组权限为可写(译注:实际上 --shared 可以指定其他行为,只是默认为将组权限改为可写并执行...下面的几节中,你会了解如何扩展到更复杂的设定。这些内容包含如何避免为每一个用户建立一个账户,给仓库添加公共读取权限,架设网页界面,使用 Gitosis 工具等等。...如果需要团队里的每个人都对仓库有写权限,又不能给每个人在服务器上建立账户,那么提供 SSH 连接就是唯一的选择了。我们假设用来共享仓库的服务器已经安装了 SSH 服务,而且你通过它访问服务器。...每次改删用户都必须登录服务器不去说,这种做法还缺少必要的权限管理 — 每个人都对所有项目拥有完整的读写权限。 幸好我们还可以选择应用广泛的 Gitosis 项目。...接下来,我们必须告诉 Gitosis 哪些仓库允许通过 Git 协议进行匿名只读访问。如果每个仓库都设有各自的段落,可以分别指定是否允许 Git 进程开放给用户匿名读取。

    1.6K10

    CentOS 6.3下使用Gitosis安装搭建Git Server教程

    Git作为一个分布式的版本控制系统,使用git的时候,一般和服务器通讯使用的是ssh协议,用ssh的主要优点是速度快(传输前数据会先压缩,比HTTP快),安全,方便读写。...客户端通过ssh访问服务器端的验证方式一般有两种,一种是用户名密码的方式,一种是使用公私钥认证的方式. 使用公私钥的方式比较方便,无需每次登录输入密码。...一般git库的管理需要权限控制,如何方便简单的进行库的权限管理呢?...authorized_keys是一个思路,指定特定command参数,每次验证好用户后首先执行相关逻辑,检测当前用户是否具有某个权限。...这里的公钥需要在git服务器管理员下使用ssh-keygen命令来创建 代码如下: # su - git 保证web页面有权限显示该仓库内容 代码如下: # chmod -R 755 /home/git

    43120

    【腾讯云的1001种玩法】Ubuntu Server搭建 Git 服务器实测版

    获取gitosis文件后,进入下面目录: 下面使用python命令安装目录下的setup.py的python脚本进行安装: 安装完成,下面开始对git进行一些基本配置。...二、创建git管理员账户、配置git 创建一个账户(git)作为git服务器的管理员,可以管理其他用户权限。...客户机中生成的ssh公钥:使用 ubuntu@VM-215-209-ubuntu:/home/git$ sudo -H -u git gitosis-init < /tmp/xjy.pub [1492077042970...三、服务器上创建项目仓库与权限配置 使用git账户在服务器上创建一个目录: ubuntu@VM-215-209-ubuntu:/home/git$ su git $ cd /home/gitrepository...gitosis.conf中使用相同的用户名。) (注意:在windows中生成的.pub文件最后会有一个用户名。使用该名称比较好) 将.pub文件复制到keydir目录下 。

    2.7K20

    linux搭建git服务端_linux搭建git服务端

    大家好,又见面了,我是你们的朋友全栈君。...setup.py install 7、 使用eclipse生产一个公钥,或者使用如下命令在linux中生成 ssh-keygen -t rsa 该密钥生成在/home/git/.ssh目录中 8、 使用.../gitosis-admin.git/hooks/post-update 10、 使用eclipse访问管理员仓库gitosis-admin.git 11、 把gitosis-admin.git仓库当做...project导入eclipse中,添加用户通过在keydir目录中添加公钥(添加后commit即可),读写权限通过修改gitosis.conf文件(修改后commit即可) 12、 创建一个仓库(我们提交的代码提交到该仓库...) mkdir runtime.git git init –bare 13、 修改gitosis.conf文件,增加访问runtime.git仓库的权限,使用eclipse访问runtime.git仓库

    1.7K20

    Linux下通过受限bash创建指定权限的账号

    通常为了系统安全或避免不必要的误操作等目的,会将账号权限降至最低。...下面介绍下在Linux下通过受限bash创建指定权限账号的操作记录: [root@mq-server ~]# ln -s /bin/bash /bin/rbash [root@mq-server ~]...用户家目录下的文件权限是root.root,上面只设置了wangshibo用户的cat权限,并且只能cat查看wangshibo用户家目录/home/wangshibo下的文件。...,那么需要添加这些命令的软链接到/home/wangshibo/bin目录下(可以通过which命令查看二进制命令的全路径) [root@mq-server ~]# ln -s /bin/ls /home...touch -> /bin/touch lrwxrwxrwx 1 root root 12 Nov 25 23:45 vim -> /usr/bin/vim 这样,wangshibo用户就拥有了上面加入的命令的执行权

    1.6K80

    linux下搭建git服务器

    在任何一台机器上使用git,第一次必须要初始化一下: git config --global user.name"git" git config --global user.email"git@server.com...setup.py install 7、 使用eclipse生产一个公钥,或者使用如下命令在linux中生成 ssh-keygen -t rsa 该密钥生成在/home/git/.ssh目录中 8、 使用.../gitosis-admin.git/hooks/post-update 10、 使用eclipse访问管理员仓库gitosis-admin.git 11、 把gitosis-admin.git仓库当做...project导入eclipse中,添加用户通过在keydir目录中添加公钥(添加后commit即可),读写权限通过修改gitosis.conf文件(修改后commit即可) 12、 创建一个仓库(我们提交的代码提交到该仓库...) mkdir runtime.git git init --bare 13、 修改gitosis.conf文件,增加访问runtime.git仓库的权限,使用eclipse访问runtime.git仓库

    2.1K10

    授权子账号对指定COS桶的访问权限

    使用场景:希望限制所有子账号只对一个桶有只读权限。(其中部分子账号已经有cosfullaccess权限)在不修改原有授权体系下增加新授权实现客户要求。...场景一:针对原始需求所需要的授权模板1、使用策略生成器创建的方式因为是对指定资源的只读权限可以使用颗粒度到资源级的指定资源授权方式使用策略生成器创建,搜索选择COS服务。...指定到桶资源,选择添加资源六段式,只需要将需要授权的桶名称复制填写在资源前缀,如需要指定到桶内具体对象,可将对象信息复制替换资源中的*因为查看桶信息前需要前置有能看到桶列表的权限,还需要额外添加拉取桶列表权限..., "effect": "allow", "resource": "qcs::cos::uid/1307118813:bll-1307118813/*"//指定到桶名称的资源六段式描述方式使用时需要将...,不变更当前权限限制对指定COS桶访问权限,实现针对固定cos桶的访问权限如果是按照场景一策略描述继续授予指定桶的访问权限,则因为有全读写权限覆盖,指定资源授权不生效。

    12710

    指定分类id使用指定的文章模版的方法

    折腾生命在于折腾,越是折腾学得越是多,于是在看论坛的时候,发现了论坛有人建议这个,emlog 指定的分类文章使用指定的文章详情模版 的方法。    ...,否则为空白页) }else if($sort == "$log"){ require_once View::getView('log');//除上面指定的分类id外,其他文章模板调用log.php }...else if($sort == "$log"){ require_once View::getView('log');//除上面指定的分类id外,其他文章模板调用log.php } ?...>的前面,加入以下代码 if($sortid==1){include View::getView('log_id');exit;} 其中sortid==1, 是要设以下那个模板文件的分类ID,多个分类使用...||,例:sortid==1 || getView('log_id')中的log_id就是以上该类要使用的模板文件名,注意模板文件名不要加.php  ---- 不同作者也可以使用此方法,只需要把其中的

    90510

    建立git服务器_git部署代码到服务器

    为了能做clone,我们必须先让某个有权限的人放一个初始化的版本到仓库中。 所以,我们必须先修改一下gitosis-admin....管理gitosis的配置文件 刚刚提到,gitosis本身的配置也是通过git来实现的。...a, usr,该组对gitosis-admin仓库有读写权限; team组有a,b两个成员,该组对teamwork仓库有读写权限; team_ro组有lz一个成员,对teamwork仓库有只读权限。...当然是测试一下,空仓库是不能clone的,所以需要某一个有写权限的人初始 化一个版本。就我来做吧,以下是在客户端完成。...仓库,想放到 gitserver上供team使用(比如你clone了一个官方的kernel仓库,想在内部使用它作为基础仓库),怎么办呢。

    2K30

    Jenkins指定具体分支持续集成-使用Generic Webhook Trigger插件和码云

    虽然如此,但是真正能够按照指定分支或参数进行触发的是Optional filter。 Optional filter的介绍是:This is an optional feature....这里应该是先确定触发器的名称,就是(4)中指定的变量; (4)指定触发器的名字; 总的来说,通过(1)(2)(3)(4)的设置,将请求中的‘ref’属性的值和Optional filter的表达式Expression...如果只指定(1)(2)而没有(3)(4)的话,他只会在Jenkins构建界面显示匹配到的值和属性,不会按照指定分支进行触发的,如下: ?...第一行是指定分支的提交,可以看出是SUCCESS: [Handling POST /generic-webhook-trigger/invoke from 61.160.47.7 : http-apr-...总结 到此,基本的实验过程已经完成,从确定分支标志位到设置Generic Webhook Trigger,因为Generic Webhook Trigger相对小众,更多是使用GitHub(GitHub

    3.4K20

    CentOS下安装Redmine并集成Git

    downloads.bitnami.com/files/stacks/redmine/2.6.1-0/bitnami-redmine-2.6.1-0-linux-x64-installer.run 增加可执行权限.../ 修改post-update权限 sudo chmod 755 /home/git/repositories/gitosis-admin.git/hooks/post-update 客户端克隆仓库进行配置...git clone git@主机IP:gitosis-admin.git 克隆后keydir目录下存放的是公钥,gitosis.conf是配置文件 打开配置文件,增加下面的内容,并将另一台机器的公钥recwert...linuxidc.com.pub置于公钥目录下 [group linuxidc] writable = linuxidc members = victor@linuxidc.com recwert@linuxidc.cc 使用初始化的客户机...这时候可能会出现404,可能的原因是linuxidc.git的权限不够,为了避免日后不必要的麻烦,直接给777的权限给该目录,刷新即可看到该版本库的提交信息

    57610

    git 迁出克隆远程仓库的指定分支方法(附常用git配置命令)

    一、普通克隆方式: git clone 这种克隆方式默认是克隆master主分支, 而且通过命令 git branch –list 能看到克隆后在本地也只有这一个分支, 如果再通过新建分支再拉取指定分支...二、克隆远程指定分支 那么,如何快速有效的直接克隆远程指定分支?...只需要一条命令: git clone -b 指定分支名> 会自动在克隆该分支在本地,同样克隆后本地只有这一个分支。...三、迁出到远程指定分支 意思就是,在本地创建个和远程分支同名且代码也完全相同的分支,并迁出到该分支: git checkout -b 分支名> origin/分支名> 这样迁出后的分支和远程分支是完全一致...,不会被迁出前的本地分支污染。

    3K10
    领券