Window下搭建git本地版本控制服务器(一份简单的gitblit安装使用说明)

一、引言

总有一些私密的东西,比如论文或者其中的程序,不适宜放到网络上,但是却需要进行较好的版本控制,这时建立一个好的本地的版本控制就显得非常有必要。众所周知,Git是一个相当优秀的版本控制软件,通过分布式存储,使用户以严谨和简便的方式管理版本。对于这种私密文件,当我们并不想把它上传到真实世界的远程服务器的时候,在本地模拟一个远程服务器就成为一个好的选择。本文就是利用Gitblit将本地硬盘中特定的路径模拟成远程服务器。

 

二、前期准备

Gitblit需要Java 7 Runtime Environment (JRE) 或Java 7 Development Kit (JDK)环境的支持,可以从官网https://www.oracle.com/java/technologies/javase-downloads.html中下载Java SE 7附近的版本,过高的版本会导致运行gitblit时报错。安装好java后记得配置环境变量。由于这不是本文重点,此处从略。

下载Gitblit软件包,官网为http://gitblit.github.io/gitblit/。这个软件是开放免费的,不要在一些奇怪的网站下载。我使用的是1.9.1版本,其他版本配置应该是类似的。

注:如果还没有Git,可以在官网下载https://git-scm.com/downloads。关于Git的使用本文也不做赘述。

 

三、配置Gitblit

1、解压存放软件包和创建服务器文件夹

在Gitblit官网下载的压缩包是一个完全的软件包,无需安装,直接解压到希望放置的位置,如D:\software\gitblit。在适当的位置建立一个文件夹,作为后面服务器的储存路径,如D:\software\gitblit\depository。

 

2、配置Gitblit属性文件

属性文件基本都在软件目录的data文件夹下。

首先是gitblit.properties文件,可以当作文本文件打开,这个是Gitblit用于识别用户魔改的配置文件的所在位置。开始里面除了一行

include = defaults.properties

之外全部是注释,这一行是说明defaults.properties是Gitblit用于储存全部属性的文件。注释的内容也证实了这一点。后面的主要内容就是修改defaults.properties这个文件,但是为了防止修改配置过程中出现重大失误,最好保留这个文件,另外拷贝一份,并且在副本上进行修改,比如我的副本命名为my.properties。所以这里建议把这一行注释掉,指向那个属性副本。完整的defaults.properties文件内容如下。

#
# GITBLIT.PROPERTIES
#
# Define your custom settings in this file and/or include settings defined in
# other properties files.
#

# Include Gitblit's 'defaults.properties' within your configuration.
#
# NOTE: Gitblit will not automatically reload "included" properties.  Gitblit
# only watches the 'gitblit.properties' file for modifications.
#
# Paths may be relative to the ${baseFolder} or they may be absolute.
#
# COMMA-DELIMITED
# SINCE 1.7.0
#include = defaults.properties
include = my.properties

#
# Define your overrides or custom settings below
#

如下图,副本my.properties如果是放在了data文件夹下的时候,上面的include后面直接跟文件名即可,如果放在其他文件夹下则需要使用绝对路径。为了不必要的麻烦,建议就放在这个data文件夹里。

 

同样地,把my.properties当作文本文件打开,找到git.repositoriesFolder属性,赋值为第一步中创建的服务器文件夹路径。

 

如下图,找到server.httpPort和server.httpsPort这两个属性,分别是由于访问服务器的ip端口号,上面是http的,下面是https的。可以按照注释中的建议设置。 

 

如下图,找到server.httpBindInterface和server.httpsBindInterface这两个属性,第一个是用http访问时使用的网址,第二个是用https访问时使用的网址,这个是重中之重。由于希望服务器只局限在本地,所以这里可以写localhost,或者写回送地址127.0.0.1(简单来说就是表示本机)。

以上就是所有需要配置的属性,设置好之后一定要记得先保存再关闭。

 

3、运行gitblit.cmd,启动服务

在软件根目录,就是软件解压的目录,中找到gitblit.cmd,双击打开。开始会是下图这样的

耐心等待服务初始化,初始化完成之后如下图,info变成了Started,服务就启动了。

此时在浏览器中访问http://127.0.0.1:8080/或者https://127.0.0.1:8443/就可以看到自己的Gitblit本地服务器了,如下图,管理员默认账户和密码都是admin。注意上面的cmd窗口不要关闭,只有它运行着的时候服务器才起作用,关闭cmd就等于关闭了服务器。

点击网站菜单栏的版本库,就可以像在GitHub里面一样轻松使用和管理Git库。此时访问这个网站不需要联网,可以拔掉网线,关闭WiFi测试。

 

4、创建库和简单的使用

版本库界面中有一个“创建版本库”的按钮,点击之后进入创建界面。这里输入库的名称,点击下面的“创建”后会按照这个库的名称在第1步中建立的服务器文件夹下创建这样一个文件夹。

建立一个新的库之后会有提示,这个网址就是用Git推送的远程服务器网址,网页中也有简单的示例告诉大家如何使用Git推送,以及如何学习Git,这就不在本文的讨论中了。

 

另外加一句,如下图,test.git就是刚刚创建出来的文件夹,从这里可以看出Gitblit是如何利用本地文件夹储存服务器内容的。

 

四、运行中可能出现的几种问题及解决方案

1、调用cmd开启服务失败,一直不显示Started。这有可能是因为配置文件修改过大,不慎将重要的属性清除了,建议从defaults.properties拷贝一份重新配置。或者查看gitblit.properties中include指向的文件名和自己修改的配置文件名是否一致,避免拼写错误导致的文件不对应问题。

2、在浏览器中输入网址无法打开(显示拒绝了连接请求时或者未发送任何数据或者暂时无法连接等等)。请检查网址拼写是否正确;端口号是否正确;http或https和端口号的组合与配置文件中声明的是否一致,比如文件中httpPort设置的8080,httpsPort设置8443,访问时用http的8443端口访问是无效的;检查是否关闭了gitblit.cmd的窗口,如果关闭了请重新打开,并保持打开状态。

3、保存文件的位置和第三章最后一步中说明的不一样。请检查创建时是否输入正确路径,或者配置文件中是否输入了正确路径。注意在.properties配置文件中出现的绝对路径必须是斜杠/分隔符,不能是反斜杠\分隔符,否则会被直接忽略连成一个很长的字符串,并保存在根目录下。

4、如果上面的方法都不起作用。就按照上面的建议再检查一次。看看属性文件是否在关闭之前保存了,我在配置的时候使用了某pad++,它可以以类似于挂起的方式关闭,所以并不会在关闭的时候保存。此时gitblit.cmd会在原来的配置文件下运行,达到令人意想不到的结果。虽然不应该是个问题,但是粗心这个问题也浪费了我许多时间。

 

五、结语

Git的优势在于其分布式的理念,通过本文这样的处理,可以把远程服务器设置到自己的移动硬盘上,或者其他私密的储存设备上,不需要同步到公共网络上,也没必要仅仅局限于自己的电脑。充分利用好Gitblit,更能在保证私密要求的同时发挥Git最大的优势,使得工作更加高效。祝愿各位都能用好版本控制,再也不因为过多的版本而混乱。

  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值