使用tortoise git管理gitolite版本库
gitolite-admin是用于管理git版本库的版本库,将其从服务器上clone下来。
使用tortoise git clone的时候需要指定私钥,私钥的格式是ppk的,需要使用putty的PUTTYGEN.EXE工具将其转换为ppk格式的。
如上图,clone的时候,勾选load putty key,即可指定ppk的路径。
clone完成之后,可以看到gitolite-admin 目录下有两个目录conf/ 和 keydir/。
其中keydir中存放用户的公钥,公钥文件的名字就是用户名。
如果想增加一个叫做test的用户,那么就生成一对密钥,然后将公钥命名为test.pub,并放到keydir中,然后提交到master然后push到服务器的gitolite-admin中。
conf目录下的gitolite.conf用于控制用户的权限。下面是它默认的内容:
#gitolite conf
# please seeconf/example.conf for details on syntax and features
repo gitolite-admin
RW+ = git
repo testing
RW+ = @all
repo所在的行表示权限控制操作所针对的版本库,repo和版本库名称使用空格分开。
之后的行表示不同的用户或者组对该版本库所具有的权限。
上面文件中的内容表示git用户对gitolite-admin版本库有读写的权限,testing所用用户对testing版本库有读写权限。
如果要将相同的权限分配个多个用户,可以在等号右边以空格分隔填写多个用户名。如“RW+ = git test”表示git和test用户对该版本库有读写权限。更好的做法是将用户划分为组,用户组以@开头,系统提供了一个默认的组@all用于表示所有用户。分组的语法为 “组 = 用户1 用户2”,需要将分组配置喜写到配置文件的开头。
下面是将test和git用户划分到管理员组。
@admin = test git
为组划分权限和为用户划分权限的语法一样,如“RW+ = @admin @all”表示admin组和all组的用户可以读写某版本库(实际中不需要这么写,all包含了admin)。
如果要在服务器上创建版本库,只需要经本地的版本库push到服务器上即可。但是首先要修改gitolite.conf文件,为服务器上即将创建的版本库指定创建权限。
repo test-repo
C = test
RW+ = test
上面的语句表示,test用户有权在服务器上创建版本库test-repo,并且有权读写它。gitolite.conf push到服务器之后,就可将本地的test-repo push到服务器的test-repo了。
在push之前首先要设置push的目标。设置方法如下
选中版本库配置节点的Git/remote节点,然后在右侧填写push的目标,然后点击“Add New/Save”。修改push的目标也是这整个页面进行的。
上面那个url需要特别说明一下,git@server:test-repo分为了三部分,git表示服务器上运行gitolite的用户;server表示服务器的地址,一般用ip或者域名替代;test-repo就是版本库在服务上的相对路径。这里直接写上了版本库的名称表示版本库放到服务器上的repositories目录中。
使用tortoise git管理gitolite版本库的更多相关文章
- 学习笔记--Git安装 创建版本库 图文详解
一.Git下载 在Windows上安装git,一般为msysgit,官网地址:http://git-scm.com/ 我下载的是Git-1.9.2-preview20140411.exe 二.Git安 ...
- Git教程--Git安装和版本库的创建
Git的诞生 很多人都知道,Linus在1991年创建了开源的Linux,从此,Linux系统不断发展,已经成为最大的服务器系统软件了. Linus虽然创建了Linux,但Linux的壮大是靠全世界热 ...
- Git入门——本地版本库操作
作为一个一直用SVN的家伙,深深地感到了自己在版本控制工具上的落伍.... 首先必须强调的是: Git与Github不是一回事. Git是目前世界上最先进的分布式版本控制系统,于2005年被linux ...
- [git]入门-创建版本库
转载整理自:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/0013743256 ...
- git入门 创建版本库, 版本管理 分支 标签
参考: https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000 GIT最流行的分布式版本 ...
- Git(二)使用git管理文件版本(TortoiseGit )
一.创建版本库 什么是版本库呢?版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改.删除,Git都能跟踪,以便任何时刻都 ...
- Git学习--创建版本库
什么是版本库呢?版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改.删除,Git都能跟踪,以便任何时刻都可以追踪历史,或 ...
- 『现学现忘』Git基础 — 8、Git创建本地版本库
目录 1.Git版本库介绍 2.创建本地版本库 场景一:创建一个空的本地版本库. 场景二:项目中已存在文件时,创建该项目的本地版本库. 场景三:在GitHub网站上创建仓库,克隆到本地. 1.Git版 ...
- Git学习之路(2)-安装GIt和创建版本库
▓▓▓▓▓▓ 大致介绍 前面一片博客介绍了Git到底是什么东西,如果有不明白的可以移步 Git学习之路(1)-Git简介 ,这篇博客主要讲解在Windows上安装Git和创建一个版本库 ▓▓▓▓▓▓ ...
随机推荐
- hadoop2 作业执行过程之作业提交
hadoop2.2.0.centos6.5 hadoop任务的提交常用的两种,一种是测试常用的IDE远程提交,另一种就是生产上用的客户端命令行提交 通用的任务程序提交步骤为: 1.将程序打成jar包: ...
- GridView格式化
<asp:TemplateColumn HeaderText="进出境运输方式"> <ItemTemplate> <%# Eval(" ...
- SOA资料
实施: 基于J2EE体系架构搭建符合SOA架构的运营管理平台 成功经验: 携程旅行网在SOA架构方面的探索 SOA在互联网系统中的应用
- mybatis 处理数组类型及使用Json格式保存数据 JsonTypeHandler and ArrayTypeHandler
mybatis 比 ibatis 改进了很多,特别是支持了注解,支持了plugin inteceptor,也给开发者带来了更多的灵活性,相比其他ORM,我还是挺喜欢mybatis的. 闲言碎语不要讲, ...
- 【Java的JNI快速学习教程】
1. JNI简介 JNI是Java Native Interface的英文缩写,意为Java本地接口. 问题来源:由于Java编写底层的应用较难实现,在一些实时性要求非常高的部分Java较难胜任(实时 ...
- Error reading from file 解决办法
最近安装程序遇见这个问题: Error reading from file. 解决办法: 给这个程序添加权限: 添加SYSTEM的读写改..如果比较懒,直接全部允许. 然后Retry.
- Oracle基础(十) DML数据操作
一.DML数据操作语言 主要用于检索.插入和修改数据库信息.它是最常用的SQL命令,如INSERT(插入).UPDATE(更新).SELECT(选择).DELETE(删除). 1.INSERT插入语句 ...
- VMware系统运维(十)部署虚拟化桌面 Horizon View 5.2 Connection Server安装
部署桌面虚拟化,首先得安装连接服务器,下面我们开始安装Connection Server. 1.下载并安装以下软件,提示:只能在Win2008R2上安装,Win2012R2无法安装. 2.双击打开程序 ...
- codeforces 678D D. Iterated Linear Function(水题)
题目链接: D. Iterated Linear Function time limit per test 1 second memory limit per test 256 megabytes i ...
- html5 之 canvas 相关知识(二)API-fillStyle
颜色.样式和阴影 fillStyle 设置或返回用于填充绘画的颜色.渐变或模式 定义和用法 context.fillStyle=color|gradient|pattern;//指示绘图填充色的CSS ...