Git-gitblit-Tortoisegit 搭建Windows Git本地服务器
1、Gitblit安装
1.1、Gitblit简介
Git在版本控制领域可谓是深受程序员喜爱。对于开源的项目,可以免费托管到GitHub上面,相当的方便。但是私有项目托管到GitHub会收取相当昂贵的一笔费用。还有些企业、单位开发在局域网内,那么如何使用Git进行代码版本控制呢?我们可以在本地搭建自己的Git服务器。Linux上搭建Git服务器相当的方便,网上资料也很多,具体可以参考廖雪峰的官方网站-Git教程-安装Git,讲的很到位,有兴趣可以学习学习。那么Windows下怎么搭建Git服务器呢?通过比较,发现Gitblit可以很方便在Win平台上搭建起Git服务。Gitblit是一个开源的git服务器java实现,所以使用的前提是安装好Java运行时环境。
1.2、安装环境
软件:jdk 1.8.0_65、Gitblit1.8.0
操作系统:win 10 家庭版
1.3、安装步骤
第一步:下载Java并安装Java,我用的是jdk 1.8.0_65。
第二步:配置Java环境变量。
右键计算机,选择 属性>高级>系统设置>高级>环境变量>系统变量。
1、新建:变量名:JAVA_HOME;变量值:C:\Program Files\Java\jdk1.8.0_65(具体要根据你自己的安装路径,我的是安装在C盘的)
2、新建:变量名:CLASSPATH;变量值:%JAVA_HOME%/lib/dt.jar;%JAVA_HOME%/lib/tools.jar
3、添加:找到PATH变量,选择编辑。把%JAVA_HOME%/bin;%JAVA_HOME%/jre/bin添加到”变量值”的结尾处。
第三步:验证Java是否安装成功。
输入指令打开命令行窗口:
ctrl + R
cmd
在命令行窗口中,输入javac,回车,如果出现下面信息,说明安装成功。
第四步:下载安装Gitblit,下载地址http://www.gitblit.com/

点击直接下载,下载完成后,直接解压即可,无需安装,我的解压路径为:C:\jstao\soft\itPackage\gitblit-1.8.0

第五步:配置Gitblit。
1、首先创建一个用于存储项目代码的文件夹。我这里创建的文件夹是C:\jstao\workspace\gitblitWorkspace
2、进入解压后的目录,进入data文件夹。打开defaults.properties文件。
3、定位到git.repositoriesFolder,赋值为C:\jstao\workspace\gitblitWorkspace

4、继续定位到server.httpPort,配置http协议端口号,默认0标识禁用http协议,这里赋值为10010

5、定位到server.httpBindInterface,配置服务器的IP地址

6、定位到server.httpsBindInterface,赋值为localhost

7、保存,关闭文件。
8、切换到解压目录,双击运行gitblit.cmd批处理文件。成功运行,如图所示:

9、服务成功运行后,测试以下。在浏览器中输入IP地址:http://127.0.0.1:10010/ ,默认用户名以及密码都是admin,登录后可以修改,建议修改。能正常访问说明部署成功。

10、每次启动Git服务都要去双击以下gitblit.cmd批处理文件,是不是很烦人,有没有开机自动启动服务的操作?当然有!来看一下配置步骤。
11、切换到解压目录,打开installService.cmd文件进行配置。找到ARCH赋值为amd64(64位OS,32位为X86)
12、在ARCH行下,新添加一行,CD的赋值路径为解压路径(注意CD后面没有空格):
SET CD=C:\jstao\soft\itPackage\gitblit-1.8.0
13、将启动参数设置为空值,即--StartParams="" ^

最后,选中installService.cmd批处理文件,以管理员方式打开即可。
若没有提示异常,到Windows“服务”组件里就可以找到“gitblit”这个服务了。接着把这个服务启动类型设为“自动”,以后该服务就会自动启动了。

1.4、创建版本库
第一步:输打开浏览器入IP地址,初始用户名admin、密码admin登陆gitblit(密码可以修改,建议修改)
第二步:点击创建版本库。

第三步:输入名称,描述。其他值默认就好,可以根据项目需求更改。

第四步:成功创建空版本库,看到一些官方小提示。用户可以根据提示向仓库推送内容。

第五步、创建用户
一般来说,不推荐使用管理员账户admin作推送,常规操作是,在用户端(客户端)推送内容到仓库。管理员账户admin只负责管理服务器站点,不涉及实际业务内容。包括创建版本库操作,后面都可以授权用户执行。下面新建用户操作。
5.1、admin登陆,点击下拉菜单中的用户

5.2、点击右上角的“添加用户”,进入添加用户页面。

常规填写完毕,属性标签页可以根据实际情况填写,可选。
5.3、访问权限页填写,配置版本库权限。
5.3.1、选择版本库,选择logit.git
5.3.2、赋予具体权限,R(克隆)一般赋予测试人选,RW(推送)、RWC(推送,创建ref)、RWD(推送,创建删除ref)、RW+一般赋予开发人员,选好之后,按添加按钮
5.3.3、最后,选择保存,创建成功
5.3.4、这里我创建了三个用户,libai为测试人员,dufu,baijuyi为开发人员


2、客户端Git安装
2.1、自行下载安装Git客户端
Git下载地址:https://git-for-windows.github.io/
2.2、配置git客户端
git本地用户配置,任意地方,右键打开Git Bash终端,输入命令行配置Git
$ git config --global user.name "jstao"
$ git config --global user.email "******@163.com"
演示,从本地向仓库推送一个新文件。
$ mkdir logitProject 新建一个文件夹logitProject
$ cd logitProject/ 进入到该文件夹
$ touch README.md 新建一个文件

$ git init
$ git add README.md
$ git commit -m "logit Project first commit."
$ git remote add origin ssh://logit@127.0.0.1:29418/logit.git
$ git push -u origin master (在此需要输入密码,回车)

如图显示,本地向仓库推送成功。
接下来可以到网页端验证以下。如图所示,刷新浏览器可以看到

可以看到已经提交到了远程仓库。
2.3、免密码克隆(推送)操作
可以看到在推送的时候需要输入密码,每次推送都要输入密码。有没有一种操作,可以使得频繁的推送不需要密码呢?当然有,看一下怎么操作,主要操作就是客户端命令行创建SSH Key,通过以下命令:
$ ssh-keygen -t rsa -C "youremail@example.com"
然后到用户主目录下找到.ssh文件夹,下面生成了id_rsa和id_rsa.pub这两个文件,将pub文件中的内容复制,上传到Gitblit站点自己账户的->用户中心->ssh,添加成功,则以后操作通过ssh://协议操作,则可以不用密码。

2.4、在IDEA中使用Git
打开IDEA File->Setting (或者使用快加建ctrl+alt+s)
将git.exe配置到IDEA

配置完成,测试一下看看。点击Test

显示测试成功,可以开始拉项目了

跟着一步步操作就可以将项目拉到本地,可以进行正常开发了。
3、Tortoisegit安装使用
上面已经够用了,但是,一般情况下我们装个Git客户端Tortoisegit,更加方便我们的开发。
3.1、安装Tortoisegit
安装TortoiseGit-2.6.0.0-64bit.msi
安装TortoiseGit-LanguagePack-2.6.0.0-64bit-zh_CN.ms
Tortoisegit及语言包下载地址:http://tortoisegit.org/download/
注:Tortoisegit是Git的一个插件,Git程序本身还是要安装的,我们上面已经装好了。
3.2、使用Tortoisegit
右键Git克隆可以将远程仓库项目,克隆到本地。
完成开发后,可以提交到远程仓库。
Git-gitblit-Tortoisegit 搭建Windows Git本地服务器的更多相关文章
- 使用Gitblit 搭建Windows Git服务器
使用Gitblit 搭建Windows Git服务器 整理使用Gitblit搭建Git服务器的步骤. 目录 使用Gitblit 搭建Windows Git服务器 目录 下载安装 配置 运行 客户端运行 ...
- Git学习笔记(windows git之初体验)
阿里国内镜像地址: https://npm.taobao.org/mirrors/git-for-windows/ 最近在学习廖雪峰老师关于git的教程,链接可以在我的首页找到.首先使用国内镜像下载并 ...
- Git学习环境搭建和git对用户的增删改查命令
git安装 windows下安装git git下载进入网址: https://git-scm.com/downloads 点击下载,进行安装,安装成功,你会看到图标,点击进入到git bash 查看g ...
- Git客户端TortoiseGit(Windows系统)的使用方法
本文环境: 操作系统:Windows XP SP3 Git客户端:TortoiseGit-1.8.8.0-32bit 一.安装Git客户端 全部安装均采用默认! 1. 安装支撑软件 msysgit: ...
- 【日记】搭建一个node本地服务器
用node搭建一个本地http服务器.首先了解htpp服务器原理 HTTP协议定义Web客户端如何从Web服务器请求Web页面,以及服务器如何把Web页面传送给客户端.HTTP协议采用了请求/响应模型 ...
- node搭建简单的本地服务器
首先要安装node,方法很多,可以去网上找找,可以直接去官网下载安装,新版本的node是自带npm的: 安装好以后,新建一个js文件,名为server.js: let http = require(' ...
- iOS 使用node js 搭建简单的本地服务器
一.前提:基于iOS 项目 调用,使用了第三方框架NodeMobile.技术说明关键是 应用生命整个周期只能在应用启动时候开辟的一个线程里申请 一个 node js 资源.如果终止了运行,重启是不支 ...
- 搭建windows的solr6服务器(二)
首先搭建solr环境,如:solr6.0学习(一)环境搭建 修改各种配置文件. 1.修改solrhome下的solr.xml文件 注解掉zookeeper搭建集群配置,我们后面会采用master-sl ...
- 搭建windows的solr6服务器
准备工作: 目前最新版本6.0.下载solr 6.0:Solr6.0下载 JDK8 下载jdk1.8:jdk1.8[solr6.0是基于jdk8开发的] tomcat8.0 下载:tomcat8 ## ...
随机推荐
- python/匿名函数和内置函数
1 匿名函数 匿名函数是lambda定义的没有名字的具有一些小功能的函数 具体形式是 lambda 参数列表:返回值表达式 lambda x: X**2 # 求平方操作 lambda x: x> ...
- highchart
highchart 1 2 #下载 https://www.highcharts.com/download a. 简单例子 <!DOCTYPE html> <html lang=&q ...
- Java基础语法<五> 大数值BigInteger BigDecimal
笔记整理 来源于<Java核心技术卷 I > <Java编程思想> 如果基本的整数和浮点数精度不能够满足需求,那么可以使用java.math包中的两个很有平有用的类:BigIn ...
- Python3 面向对象编程之程序设计思想发展
概述 1940年以前:面向机器 1940年以前:面向机器 最早的程序设计都是采用机器语言来编写的,直接使用二进制码来表示机器能够识别和执行的指令和数 据.简单来说,就是直接编写 和 的序列来代表程序语 ...
- 关于Goldwell平台推出赠金及手数奖励
关于Goldwell平台推出赠金及手数奖励 Goldwell平台是一家拥有30多年现货黄金经验平台,平台位于柬埔寨金边,是一家国际衍生品的经纪公司.Goldwell平台它对柬埔寨金融市场和客户绝对的承 ...
- Python系列之 - python数据类型
原链接:https://blog.csdn.net/m0_37745438/article/details/79572884 学习一门语言,往往都是从Hello World开始. 但是笔者认为,在一个 ...
- mysql事务,视图,权限管理,索引,存储引擎(胖胖老师)
1: 视图什么是视图 视图是一个虚拟表, 它的内容来源于查询的实表, 本身没有真正的数据;视图的作用 对于复杂的查询时,每次查询时都需要编写一些重复的查询代码让编写sql的效率低下, 为了 ...
- 【实验吧】CTF_Web_登录一下好吗?
实验吧CTF---Web篇 1. 打开登录地址(http://ctf5.shiyanbar.com/web/wonderkun/web/index.html),发现为一个登录界面,第一想到的是查看源代 ...
- Docker(六):Docker 三剑客之 Docker Swarm
实践中会发现,生产环境中使用单个 Docker 节点是远远不够的,搭建 Docker 集群势在必行.然而,面对 Kubernetes, Mesos 以及 Swarm 等众多容器集群系统,我们该如何选择 ...
- [Codeforces 176B]Word Cut
Description 题库链接 给你两个字符串 \(S\) 和 \(T\) ,准许你 \(k\) 次操作,每次将字符串左右分成两个非空的部分,再交换位置,问你有多少种不同的操作方法将 \(S\) 串 ...