Windows下的git服务器搭建
时间一晃又是两个月过去了,我好像在写博客这方面有点懒,= 。=
主要也是没啥好写的,项目上的事情又不能写,能写的东西实在太少。
前两个月领导花巨资申请了一个服务器,让我搞git服务器来管理代码,花了几天时间服务器搭建好了。
但是这个博客因为种种原因拖到了现在,其实之前在某个破旧的服务器上搭建过Ubuntu下的git服务器,但是领导不喜欢Linux操作系统让我在Windows下搞,没得法只能照办。(后续应该会更新Ubuntu下搭建git服务器的博客吧) 花絮结束,接下来是正文。
*********我是以Windows server 2016 为例**********
1.下载Java
去官网随便下一个。 //注意点:JDK 和JRE都要下, JRE后面有用到
2.给Java设置环境变量
右键计算机-属性-高级系统设置-高级-环境变量
新建变量名 JAVA_HOME 值 C:\Program Files\Java\jdk1.8.0_65 (实际按照自己的真实路径来)
新建变量名 CLASSPATH 值
.%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
(我自己的前面有个点,有的博客没有点,具体要不要可以试试)
找到path变量 编辑 在结尾处添加
%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
如果设置OK了可以打开命令行输入javac试试,如果出现如下信息则说明安装成功。
3.下载gitblit
www.gitblit.com
4.稍微配置一下gitblit
下载完成之后解压就可以了,免安装软件。如下图
建立一个文件夹来储存资料,比如 D:\Git\Git_file_save
找到Git/data目录下的 gitblit.properties 并编辑
1. git.repositoriesFolder=D:\Git\Git_file_save (设置资料库路径,这里以我的为例)
2. server.httpPort = 80 (上面提示的80或者8080)
3. server.httpBindInterface = 192.168.123.123 (填写做服务器的机子的IPV4地址)
4. server.httpsBindInterface = localhost
5.保存退出
回到gitblit目录下,双击运行gitblit.cmd 如果成功截图如下
打开浏览器输出之前的IPV4地址即可访问 192.168.123.123 (后面加不加:80都无所谓)如果是同一网段的其他机器访问的话,服务器记得关闭防火墙。不关也可以,防火墙出站入站里面把port分好,之后每个项目的端口都不同,记得在出入站规则里面加入。
PS:出入站规则在 Windows防火墙--高级设置--入站规则/出站规则--新建规则(类型选端口)里面添加。
账号密码都是admin 此账号为管理员账号
这样就算成功开启了服务器,并且可以正常访问。缺点就是这个cmd窗口一旦关闭那么服务器就会关闭,每次服务器开机需要手动打开这个cmd ,非常麻烦,所以建议添加至Windows service 里面让它开机自启比较好
5.以Windows server 方式启动gitblit
回到gitblit目录下 编辑installService.cmd
注意里面的三个地方 SET ARCH = x86 (有的说64位的是amd64,32位系统的就x86,又有的说amd64兼容性不好,反正我最后是64位的处理器64位的系统用的x86)
SET CD =D:\Git\Git_file_save (资料库路径,这里以我的为例)
StartParams参数给空,保持然后管理员身份运行该批处理文件。然后打开Windows服务可以看到一个叫gitblit的服务,如图
但是是未启用的状态,点击启用的话有可能会报错。(我就是卡在这里卡了好久)
首先管理员身份运行软件根目录下的gitblitw.exe
如下图 Service status 会显示当前服务器状态,点击start看看能否成功启动,如果不能成功启动则需要检查一下菜单栏里面Java里面的第一个文件路径。
我当时没有装JRE,用的是JDK里面的jvm.dll 结果死活启动不了,搞了很久 换个JRE的jvm.dll就好了。
这里应该是需要搞成合适的jvm.dll才能启动服务,给大家踩了个坑,,直接把JRE JDK都装了就啥事没有一路顺畅。
至此,一旦service status 状态是 stared 。说明服务已经搞好,从此服务器只要不关机,后台就会一直保持这个gitblit服务是启动的。重启开机什么的也会自动启用这个服务,十分人性化。
git 服务器的搭建就是这些,容易被坑的地方我也全部指出来了。下一个博客会就我个人水平来简要分享一下git怎么使用,不过更新得随缘了
o(* ̄▽ ̄*)ブ