使用Gitblit 搭建Windows Git服务器

整理使用Gitblit搭建Git服务器的步骤。

目录


下载安装

  • jdk 本文使用版本1.7u80.
  • gitblit 本文使用版本1.8.0 ,直接解压无须安装.

配置

  • jdk配置 
    配置环境变量,略。

  • gitblit配置 
    参考官方文档。修改gitblit安装目录下的data文件下的gitblit.properties。

    1. 其中include = defaults.properties注释掉,并添加include = my.properties
    2. 从data文件夹下发现了defaults.properties文件,这是gitblit的默认配置,复制一遍该文件,并改名为上诉修改的配置名称,我这里就是my.properties.
    3. 打开my.properties,主要修改以下几点: 
      3.1. git.repositoriesFolder(资料库路径):这里改成自己新建的仓库目录路径,不改默认为gitblit目录下的git目录. 
       
      3.2. server.httpPort:设定http协议的端口号。默认0表示禁用http协议. 
       
      3.3. server.httpBindInterface:设定服务器的IP地址。默认没有内容,服务器本地可以通过localhost访问,如果指定,则只能通过指定的ip地址访问. 

运行

  • 首次访问

    1. 运行gitblit根目录下的gitblit.cmd 批处理文件. 

    2. 浏览器访问. 

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

    4. 可以修改登录密码,建议修改. 

  • 创建版本库

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

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

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

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

  • 创建用户

    1. 点击下拉菜单中的用户

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

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

    4. 访问权限页面,配置版本库权限. 
      1).选择版本库,选择test.git

      2).选择具体权限,选择R(克隆)(即读权限),点击添加. 


      3).创建成功. 

      4).另外再同样的方式配置用户test2,权限选择为对test.git拥有RW(推送)权限,以及用户test3,权限选择为对test.git拥有RWC(推送,创建ref)权限. 

客户端运行

  • 安装git 
    1. 本地安装git,略.
    2. 配置 
      $ git config --global user.name "Your Name" 
      $ git config --global user.email "email@example.com" 

      需要指出的是这里并不需要与上面设置的test用户信息相同,名称与邮箱可用自己的账号
    3. 访问站点 
      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不仅可以克隆,也可以推送自己的修改。演示略.

其他

  1. https安全证书访问。
  2. 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服务器的更多相关文章

  1. Win10系统使用Gitblit搭建局域网Git服务器

    一.安装配置jdk 1.下载 下载地址:https://www.oracle.com/java/technologies/javase-jdk14-downloads.html 2.安装jdk 3.配 ...

  2. gitblit 搭建本地git服务器

    本文主要描述gitblit搭建本地服务器

  3. 利用阿里云搭建私有Git服务器

    服务器系统:Centos 6 (查看centos版本命令:lsb_release -a) 客户端系统:Windows 7 一.服务器端安装Git ==通常centos上使用yum源安装的git版本过低 ...

  4. Ubuntu 14.04搭建简单git服务器

    /****************************************************************************** * Ubuntu 14.04搭建简单gi ...

  5. 搭建Windows SVN服务器及TortoiseSVN使用帮助和下载

    搭建Windows SVN服务器: 用的SVN服务器通常为外部,例如Google Code的服务器,不过,做为一个程序开发人员,就算自己一个人写程序,也应该有一个SVN版本控制系统,以便对开发代码进行 ...

  6. Windows Git 服务器 客户端 Delphi Git配置

    装Git后本地单机版就有了版本管理功能. git 使用记录 git 客户端 这2个工具足够用. git for windows,http://git-scm.com/download/,Git-1.9 ...

  7. [开发笔记usbTOcan]用树莓派搭建私有Git服务器

    0 | 思路 在开始编程前,先创建一个版本管理库,以前一直用SVN,但目前用Git的还是比较,正好利用这个机会学习GIt. 想过使用Github提供的免费服务器,但项目目前还没有做开源的准备,于是就有 ...

  8. Git-gitblit-Tortoisegit 搭建Windows Git本地服务器

    1.Gitblit安装 1.1.Gitblit简介 Git在版本控制领域可谓是深受程序员喜爱.对于开源的项目,可以免费托管到GitHub上面,相当的方便.但是私有项目托管到GitHub会收取相当昂贵的 ...

  9. Gitblit搭建及Git协作开发流程

    1. 概述 目前主流的是git作为自己代码管理,但是采用github需要付费才能够使用,如果不付费,代码需要公开.创业团队及小型开发团队都有必要搭建自己的代码服务器,自己摸索需要一定的时间,会赶不及项 ...

随机推荐

  1. vue双向绑定原理分析

    当我们学习angular或者vue的时候,其双向绑定为我们开发带来了诸多便捷,今天我们就来分析一下vue双向绑定的原理. 简易vue源码地址:https://github.com/jiangzhenf ...

  2. [转]C++11 随机数学习

    相对于C++ 11之前的随机数生成器来说,C++11的随机数生成器是复杂了很多.这是因为相对于之前的只需srand.rand这两函数即可获取随机数来说,C++11提供了太多的选择和东西. 随机数生成算 ...

  3. 【Python】Flask系列-URL和视图笔记

    1.学习目标 熟悉Flask相关知识. 熟悉web开发流程. 能独立开发Flask项目. 2.环境配置 Python虚拟环境安装 因为python的框架更新迭代太快了,有时候需要在电脑上存在一个框架的 ...

  4. 015_sublime插件管理及所有非常有用插件

    一. <1>按照这个进行Package Control的安装 https://packagecontrol.io/installation import urllib.request,os ...

  5. thymeleaf-extras-shiro

    thymeleaf-extras-shiro 转载:https://github.com/theborakompanioni/thymeleaf-extras-shiro A Thymeleaf di ...

  6. python基础-装饰器,生成器和迭代器

    学习内容 1.装饰器 2.生成器 3.迭代器 4.软件目录结构规范 一:装饰器(decorator) 1.装饰器定义:本质就是函数,用来装饰其他函数,即为其他函数添加附加功能. 2.装饰器原则:1)不 ...

  7. node koa2

    http://www.codes51.com/itwd/4316421.html 问题: (node.js)nodejs koa ctx=> 报错描述: 刚开始接触 koa 一直提示 ctx=& ...

  8. 几个比较实用的CSS

    1.filter:chroma(color:#FFFFFF);    让指定的背景色透明,例: <table cellspacing = "0" cellpadding = ...

  9. [转] caffe视觉层Vision Layers 及参数

    视觉层包括Convolution, Pooling, Local Response Normalization (LRN), im2col等层. 1.Convolution层: 就是卷积层,是卷积神经 ...

  10. 2018-11-1 NOIP 模拟赛解题报告

    T1 Domino 多米诺骨牌 题目大意 给你N个骨牌,上下各有一个数,要使上面一排的和为偶数,同时下面一排的和也为偶数,最多要翻转多少次?如果无法达成那么输出-1. 解法 水题秒切 根据数的奇偶性质 ...