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

运行

  • 首次访问

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

    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" 
      配置git
      需要指出的是这里并不需要与上面设置的test用户信息相同,名称与邮箱可用自己的账号
    3. 访问站点 
      1).使用管理员新建账户test登录 
      test账户登录
      版本库中没有内容,尽管admin配置了test仓库,并给予了test账户克隆权限,但是由于test仓库是一个空仓库,所以这里并没有显示。 
      2).退出test,使用test2登录 
      test2账户登录
      可以看到test版本库,点击进入,如admin账户创建版本库之后的页面一样 
      进入test版本库
      尝试使用提示的命令推送. 
      test2用户尝试推送
      推送失败,因为test2只有RW(推送)权限,并不具有创建的权限。具体的权限可以参考官方文档. 
      权限列表
      3).浏览器退出test2,使用test3登录 
      这里写图片描述
      发现并不像test2登录时,有提示信息和命令,这是由于test2的提交,导致版本库生成了一些文件信息数据,大概620b,而提示信息和命令推荐只有在空版本库时才会显示。我们可以根据页面上提供的ssh://test3@ip:29418/test.git,以及模仿test2的操作过程继续命令行操作。 
      test3命令行操作
      推送成功,浏览器刷新可以看到 
      推送成功页面信息
      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.

分类: 项目管理
 
 
本文转自左正博客园博客,原文链接: http://www.cnblogs.com/soundcode/p/7204901.html,如需转载请自行联系原作者
相关文章
|
23天前
|
存储 Java 数据库
windows server2016搭建AD域服务器
windows server2016搭建AD域服务器
117 72
|
15天前
|
存储 开发工具 git
[Git] 深入理解 Git 的客户端与服务器角色
Git 的核心设计理念是分布式,每个仓库既可以是客户端也可以是服务器。通过 GitHub 远程仓库和本地仓库的协作,Git 实现了高效的版本管理和代码协作。GitHub 作为远程裸仓库,存储项目的完整版本历史并支持多客户端协作;本地仓库则通过 `.git` 文件夹独立管理版本历史,可在离线状态下进行提交、回滚等操作,并通过 `git pull` 和 `git push` 与远程仓库同步。这种分布式特性使得 Git 在代码协作中具备强大的灵活性和可靠性。
45 18
[Git] 深入理解 Git 的客户端与服务器角色
|
16天前
|
网络安全 Apache 开发工具
图解Git——服务器上的Git《Pro Git》
Git 远程仓库及通信协议简介:远程仓库为团队协作提供平台,支持共享代码。常见形式为裸仓库,仅保存 Git 元数据。Git 支持多种协议,包括本地协议(适合局域网)、HTTP/HTTPS(推荐智能 HTTP,安全易用)、SSH(企业内部协作首选)和 Git 协议(高效只读访问)。选择协议需根据协作需求、安全性和配置难度权衡。此外,搭建 Git 服务器涉及创建裸仓库、上传至服务器、初始化共享仓库等步骤。生成 SSH 公钥、配置服务器及使用 GitWeb 或 GitLab 等工具可进一步增强功能。第三方托管服务如 GitHub 提供便捷的托管选项,适合快速启动和开源项目。总结而言,自行运行服务器提
29 11
|
3月前
|
Android开发 数据安全/隐私保护 虚拟化
安卓手机远程连接登录Windows服务器教程
安卓手机远程连接登录Windows服务器教程
455 4
|
3月前
|
NoSQL Linux PHP
如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤
本文介绍了如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤。接着,对比了两种常用的 PHP Redis 客户端扩展:PhpRedis 和 Predis,详细说明了它们的安装方法及优缺点。最后,提供了使用 PhpRedis 和 Predis 在 PHP 中连接 Redis 服务器及进行字符串、列表、集合和哈希等数据类型的基本操作示例。
118 4
|
4月前
|
Apache 数据中心 Windows
将网站迁移到阿里云Windows系统云服务器,访问该站点提示连接被拒绝,如何处理?
将网站迁移到阿里云Windows系统云服务器,访问该站点提示连接被拒绝,如何处理?
|
4月前
|
域名解析 缓存 网络协议
Windows系统云服务器自定义域名解析导致网站无法访问怎么解决?
Windows系统云服务器自定义域名解析导致网站无法访问怎么解决?
|
4月前
|
弹性计算 安全 Windows
通过远程桌面连接Windows服务器提示“由于协议错误,会话将被中断,请重新连接到远程计算机”错误怎么办?
通过远程桌面连接Windows服务器提示“由于协议错误,会话将被中断,请重新连接到远程计算机”错误怎么办?
|
28天前
|
弹性计算 数据挖掘 应用服务中间件
阿里云轻量应用服务器68元与云服务器99元和199元区别及选择参考
目前阿里云有三款特惠云服务器,第一款轻量云服务器2核2G68元一年,第二款经济型云服务器2核2G3M带宽99元1年,第三款通用算力型2核4G5M带宽199元一年。有的新手用户并不是很清楚他们之间的区别,因此不知道如何选择。本文来介绍一下它们之间的区别以及选择参考。
399 87
|
21天前
|
存储 弹性计算 应用服务中间件
阿里云轻量应用服务器出新品通用型实例了,全球26个地域可选
近日,阿里云再度发力,推出了首款全新升级的轻量应用服务器——通用型实例。这款服务器实例不仅标配了200Mbps峰值公网带宽,更在计算、存储、网络等基础资源上进行了全面优化,旨在为中小企业和开发者提供更加轻量、易用、普惠的云计算服务,满足其对于通用计算小算力的迫切需求。目前,这款新品已在全球26个地域正式上线,为全球用户提供了更加便捷、高效的上云选择。
133 27