Windows Server2012搭建Git服务器

一、说明


最近在阿里搞了台Windows Server2012的服务器,然后想着搭建个Git服务器,在网上找了种方式,就是使用Git+COPSSH+TortoiseGit搭建本地Git服务器,然后就去试了下,搞了半天,最后发现还是不行,怀疑是软件的问题,看网上的教程他们很多都是Copssh_4.1.0_Installer.exe的,用这个版本在Server2012上安装之后根本就启动不了,也没有成功创建用户。。估计是不支持Server2012。。这就很尴尬。。然后就想去官网找个最新的版本试试:https://www.itefix.net/copssh




发现了问题所在。。我用的是64位系统,要下收费版。。。然后想了下果断放弃这个方法。。换个方式来搭建,还有种方式就是使用gitblit。


如果想用Git+COPSSH+TortoiseGit来搭建可以参考以下文章:


http://blog.csdn.net/aaron_luchen/article/details/10498181/
http://blog.csdn.net/code_style/article/details/38764203?locationNum=5&fps=1
http://lxsym.blog.51cto.com/1364623/551028/
http://www.cnblogs.com/fengh/p/3922635.html
http://blog.csdn.net/henrytam123/article/details/38354555
http://blog.csdn.net/u012678179/article/details/49888455
http://www.jianshu.com/p/442a0e01dd95


二、安装配置


由于要使用gitblit必须要安装JDK,至于怎么安装请百度,gitblit的下载地址为:http://www.gitblit.com/




这里最新的是1.8,下载之后,解压,然后编辑E:\Git_lib\data\defaults.properties 文件



 
 
  1. #Git仓库的文件路径
  2. git.repositoriesFolder = E:\Git_lib\GitRepository
  3. #HTTP协议使用的端口号
  4. server.httpPort = 1010
  5. #HTTPS协议使用的端口号, Tomcat的HTTPS默认使用的是8443端口
  6. server.httpsPort = 8443
  7. #HTTP协议传输数据的接口,请改为自己的ip
  8. server.httpBindInterface = 192.168.67.14
  9. #HTTPS协议传输数据的接口,请改为自己的ip
  10. server.httpsBindInterface = localhost

修改之后保存defaults.properties文件


三、测试


然后以管理员运行gitblit.cmd




然后在服务器内用浏览器访问 http://xxxxx:1010/ 就可以了。






还有种方式就是以服务的方式启动gitblit,具体步骤如下:


修改 installService.cmd 文件。 
1)修改 ARCH 
    32位系统:SET ARCH=x86 
    64位系统:SET ARCH=amd64 
2) 
添加 CD 为程序目录 
    SET CD=E:\Git_lib(你的实际目录) 
3) 
修改StartParams里的启动参数,给空就可以了。




修改之后以管理员运行installService.cmd文件就可以了。



四、外网访问


由于我用的是阿里云的服务器,所以要想通过外网能访问到gitblit,还的做下调整,首先得在服务中,把相应的端口加入到防火墙的入站规则中去,然后到阿里云的控制面板中




添加安全组规则




把要在外网能访问的端口加入到上面去,就行了。


五、gitblit使用


1)用户登录


输入管理员账号admin/admin登录





2)创建版本库


点击下拉菜单中的创建版本库,或者页面中版本库进行管理




输入名称,具体访问策略与初始化内容默认,根据实际需求更改





创建空的版本仓库成功,页面会有一些提示信息与命令,供用户用于向仓库中推送内容




这里用的是admin进行创建的,不推荐使用管理员来创建项目,一般通过配置新的用户,在用户端(即客户端)推送内容到仓库。这也比较符合实际生产,admin账户只用来管理服务器站点,不参与实际业务。包括创建版本库,以后也可以通过配置权限,向用户授予权限。接下来创建一个用户


3)创建用户配置权限


点击下拉菜单中的用户




点击右上角添加用户,进入明细页面,填写常规信息




属性页根据具体情况,填写,可选




访问权限页面,配置版本库权限




选择版本库,这里选择上面admin创建的fendo.git,选择具体权限,选择RWC(推送,创建ref)权限,点击添加,然后点击保存。


六、客户端运行


1)本地安装GIT,略

2)配置GIT


 
 
  1. git config --global user.name "fendo"
  2. git config --global user.email "2312892206@qq.com"

3)登录Gitlib

使用刚刚创建的新账号,fendo,进行登录,登录成功之后,会显示admin创建的那个项目

4)提交项目

具体步骤如下:


 
 
  1. git init
  2. git add .
  3. git commit -m "commit message"
  4. git remote add origin ssh://fendo@xxxxxx:29418/fendo.git
  5. git push -u origin master



其中:


 
 
  1. ssh: connect to host xxxxx port 29418: Connection timed out
  2. fatal: Could not read from remote repository.


错误是由于服务器端口没有开发引起的,解决方法就是,先在服务器上新建入站规则把端口号加进去,然后去阿里云控制板进行配置,就行了。

然后刷新下gitblit就会有结果了



5)无密码提交


ssh无密码克隆推送操作,主要操作就是客户端命令行创建SSH Key,通过以下命令: 


$ ssh-keygen -t rsa -C “youremail@example.com”
 
 

然后到用户主目录下找到.ssh文件夹,下面生成了id_rsa和id_rsa.pub这两个文件,将pub文件中的内容复制,上传到Gitblit站点自己账户的->用户中心->ssh,添加成功,则以后操作通过ssh://协议操作,则可以不用密码。



七、问题


以服务的方式启动gitblit报错:

windows 不能在本地计算机启动gitblit

 
 




出现这种问题的原因就是执行安装服务的时候,文件修改错了,如果是64位的系统的话,把ARCH设置成amd64的话,会出现这种问题,设置成x86就行了。

SET ARCH=x86
 
 

先执行




uninstallService.cmd删除调服务,然后再以管理员方式执行installService.cmd,就行了。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值