使用Gitblit 搭建Windows Git服务器
使用Gitblit 搭建Windows Git服务器
整理使用Gitblit搭建Git服务器的步骤。
目录
下载安装
配置
jdk配置
配置环境变量,略。gitblit配置
参考官方文档。修改gitblit安装目录下的data文件下的gitblit.properties。- 其中
include = defaults.properties注释掉,并添加include = my.properties. - 从data文件夹下发现了defaults.properties文件,这是gitblit的默认配置,复制一遍该文件,并改名为上诉修改的配置名称,我这里就是my.properties.
- 打开my.properties,主要修改以下几点:
3.1. git.repositoriesFolder(资料库路径):这里改成自己新建的仓库目录路径,不改默认为gitblit目录下的git目录.
3.2. server.httpPort:设定http协议的端口号。默认0表示禁用http协议.
3.3. server.httpBindInterface:设定服务器的IP地址。默认没有内容,服务器本地可以通过localhost访问,如果指定,则只能通过指定的ip地址访问.
- 其中
运行
首次访问
运行gitblit根目录下的gitblit.cmd 批处理文件.
浏览器访问.
输入管理员账号admin/admin登录.
可以修改登录密码,建议修改.
创建版本库
创建版本库,点击下拉菜单中的创建版本库,或者页面中版本库进行管理.
输入名称,具体访问策略与初始化内容默认,根据实际需求更改.
创建空的版本仓库成功,页面会有一些提示信息与命令,供用户用于向仓库中推送内容.
这里不使用管理员账户admin作推送,我们通过配置新的用户,在用户端(即客户端)推送内容到仓库。这也比较符合实际生产,admin账户只用来管理服务器站点,不参与实际业务。包括创建版本库,以后也可以通过配置权限,向用户授予权限。接下来创建一个用户.
创建用户
点击下拉菜单中的用户.
点击右上角添加用户,进入明细页面,填写常规信息.
属性页根据具体情况,填写,可选.
访问权限页面,配置版本库权限.
1).选择版本库,选择test.git.
2).选择具体权限,选择R(克隆)(即读权限),点击添加.
3).创建成功.
4).另外再同样的方式配置用户test2,权限选择为对test.git拥有RW(推送)权限,以及用户test3,权限选择为对test.git拥有RWC(推送,创建ref)权限.
客户端运行
- 安装git
- 本地安装git,略.
- 配置
$ git config --global user.name "Your Name"$ git config --global user.email "email@example.com"
需要指出的是这里并不需要与上面设置的test用户信息相同,名称与邮箱可用自己的账号 - 访问站点
1).使用管理员新建账户test登录
版本库中没有内容,尽管admin配置了test仓库,并给予了test账户克隆权限,但是由于test仓库是一个空仓库,所以这里并没有显示。
2).退出test,使用test2登录
可以看到test版本库,点击进入,如admin账户创建版本库之后的页面一样
尝试使用提示的命令推送.
推送失败,因为test2只有RW(推送)权限,并不具有创建的权限。具体的权限可以参考官方文档.
3).浏览器退出test2,使用test3登录
发现并不像test2登录时,有提示信息和命令,这是由于test2的提交,导致版本库生成了一些文件信息数据,大概620b,而提示信息和命令推荐只有在空版本库时才会显示。我们可以根据页面上提供的ssh://test3@ip:29418/test.git,以及模仿test2的操作过程继续命令行操作。
推送成功,浏览器刷新可以看到
3).浏览器退出test3,使用test2登录,都能看到相同内容。接下来test可以通过克隆操作,下载版本库内容。test2不仅可以克隆,也可以推送自己的修改。演示略.
其他
- https安全证书访问。
- ssh无密码克隆推送操作,主要操作就是客户端命令行创建SSH Key,通过以下命令:
$ ssh-keygen -t rsa -C "youremail@example.com",然后到用户主目录下找到.ssh文件夹,下面生成了id_rsa和id_rsa.pub这两个文件,将pub文件中的内容复制,上传到Gitblit站点自己账户的->用户中心->ssh,添加成功,则以后操作通过ssh://协议操作,则可以不用密码。
参考
查阅及参考文章1.
使用Gitblit 搭建Windows Git服务器的更多相关文章
- Win10系统使用Gitblit搭建局域网Git服务器
一.安装配置jdk 1.下载 下载地址:https://www.oracle.com/java/technologies/javase-jdk14-downloads.html 2.安装jdk 3.配 ...
- gitblit 搭建本地git服务器
本文主要描述gitblit搭建本地服务器
- 利用阿里云搭建私有Git服务器
服务器系统:Centos 6 (查看centos版本命令:lsb_release -a) 客户端系统:Windows 7 一.服务器端安装Git ==通常centos上使用yum源安装的git版本过低 ...
- Ubuntu 14.04搭建简单git服务器
/****************************************************************************** * Ubuntu 14.04搭建简单gi ...
- 搭建Windows SVN服务器及TortoiseSVN使用帮助和下载
搭建Windows SVN服务器: 用的SVN服务器通常为外部,例如Google Code的服务器,不过,做为一个程序开发人员,就算自己一个人写程序,也应该有一个SVN版本控制系统,以便对开发代码进行 ...
- Windows Git 服务器 客户端 Delphi Git配置
装Git后本地单机版就有了版本管理功能. git 使用记录 git 客户端 这2个工具足够用. git for windows,http://git-scm.com/download/,Git-1.9 ...
- [开发笔记usbTOcan]用树莓派搭建私有Git服务器
0 | 思路 在开始编程前,先创建一个版本管理库,以前一直用SVN,但目前用Git的还是比较,正好利用这个机会学习GIt. 想过使用Github提供的免费服务器,但项目目前还没有做开源的准备,于是就有 ...
- Git-gitblit-Tortoisegit 搭建Windows Git本地服务器
1.Gitblit安装 1.1.Gitblit简介 Git在版本控制领域可谓是深受程序员喜爱.对于开源的项目,可以免费托管到GitHub上面,相当的方便.但是私有项目托管到GitHub会收取相当昂贵的 ...
- Gitblit搭建及Git协作开发流程
1. 概述 目前主流的是git作为自己代码管理,但是采用github需要付费才能够使用,如果不付费,代码需要公开.创业团队及小型开发团队都有必要搭建自己的代码服务器,自己摸索需要一定的时间,会赶不及项 ...
随机推荐
- 交互题(二分)(D. Game with modulo)
题目链接:http://codeforces.com/contest/1104/problem/D 题目大意:给出一个式子 x%a y%a,会返回结果,如果返回x代表x%a>=y%a.如果返回y ...
- linux下搭建我的世界spongeforge 服务器 (海绵端)
以下我用的都是1.10.2版本 且以下用的服务器连接管理软件有WinSCP.Xshell 5 首先,去下载一个MC1.10.2的纯净服务端,这个不会很难,百度一下! 比如我下的文件就叫minecraf ...
- 在maven 2工程中加入iTextAsian支持(maven添加自定义jar包到本地仓库)
最近需要在工程中加入JasperReports,其中要用到把报表导出为pdf文件的功能.JasperReports内部使用iText来输出pdf文档,而iText对中文是放在单独的包iTextAsia ...
- MySQL常见的两种存储引擎:MyISAM与InnoDB的爱恨情仇
Java面试通关手册(Java学习指南,欢迎Star,会一直完善下去,欢迎建议和指导):https://github.com/Snailclimb/Java_Guide 一 MyISAM 1.1 My ...
- ubuntu eclipse 找不到jre文件
一. 把jdk下的jre文件copy到eclipse安装目录 二. 打开eclipse 重新设计library和工作空间
- SqlServer中查看索引的使用情况
--查看数据库索引的使用情况 select db_name(database_id) as N'TOPK_TO_DEV', --库名 object_name(a.object_id) as N'Top ...
- hdu 5427(排序水题)
排序 年轻的排前面 名字中可能有空格 Sample Input21FancyCoder 19962FancyCoder 1996xyz111 1997 Sample OutputFancyCoderx ...
- 兼容到ie10的js文件导出、下载到本地
话不多说,上代码: try { let reader = new FileReader(); let blob = new Blob([res.data], { type: 'application/ ...
- Codeforces Round #533 (Div. 2) E - Helping Hiasat 最大团
E - Helping Hiasat 裸的最大团,写了一种 2 ^ (m / 2) * (m / 2)的复杂度的壮压, 应该还有更好的方法. #include<bits/stdc++.h> ...
- Java之路(五) 访问权限控制
在Java中,所有事物都具有某种形式的访问权限控制. 访问权限的控制等级从最大到最小依次为:public,protected,包访问权限(无关键词)和private. public,protected ...