zoukankan      html  css  js  c++  java
  • 如何在windows中部署Gitblit

    1.安装Java环境

    2.下载Gitblit压缩包

    http://gitblit.com/

    3.解压后进行配置

    编辑gitblit-1.8.0datagitblit.properties文件

     

    git.repositoriesFolder = F:/GitServer    注意目录必须要用“/”而不是“”。
    server.httpPort = 8080
    server.httpsPort = 8443

    4.运行解压目录下的gitblit.cmd

    5.在浏览器里进行管理

    http://localhost:8080/

    在浏览器中访问版本库的时候,复制的按钮需要Adobe Flash Player

    6.导入证书

    gitblit-1.8.0datacertsca.cer

    可以参考http://blog.csdn.net/xtayfjpk/article/details/45669335  此文章有关于如何生成用户证书以及服务器证书的细节

    7.扩展:将GitBlit配置为Windows服务

    Gitblit uses Apache Commons Daemon to install and configure its Windows service.

    1. Review the contents of the installService.cmd where you may have to change the default keystore password.
    2. Set the ARCH value as appropriate for your installed Java Virtual Machine.
    3. Add any necessary --StartParams as enumerated below in Command-Line Parameters.
    4. Execute the script.

    After service installation you can use the gitblitw.exe utility to control and modify the runtime settings of the service.
    Additional service definition options and runtime capabilities of gitblitw.exe (prunmgr.exe) are documented here.

    涉及到的一个启动参数--StartParams="--storePassword;gitblit;--baseFolder;%CD%data" ^    只要修改一下密码就可以了

    NOTE:
    If you change the name of the service from gitblit you must also change the name of gitblitw.exe to match the new service name otherwise the connection between the service and the utility is lost, at least to double-click execution.

    cmd文件中提到了Procrun

     //IS Install service

    Command-Line parameters override the values in gitblit.properties at runtime.

    --baseFolder           The default base folder for all relative file reference settings
    --repositoriesFolder   Git Repositories Folder
    --userService          Authentication and Authorization Service (filename or fully qualified classname)
    --httpPort             HTTP port for to serve. (port <= 0 will disable this connector)
    --httpsPort            HTTPS port to serve.  (port <= 0 will disable this connector)
    --sshPort              SSH Daemon port to serve.  (port <= 0 will disable this daemon)
    --gitPort              Git Daemon port to serve.  (port <= 0 will disable this daemon)
    --alias                Alias in keystore of SSL cert to use for https serving
    --storePassword        Password for SSL (https) keystore.
    --shutdownPort         Port for Shutdown Monitor to listen on. (port <= 0 will disable this monitor)
    --dailyLogFile         Redirect logging to a rolling, daily log file instead of stdout
    --tempFolder           Folder for server to extract built-in webapp
    

    Example

    java -jar gitblit.jar --userService c:/myrealm.config --storePassword something --baseFolder c:/data
    

     

    服务安装之后还需要另外设置

    VM Considerations

    By default, the service installation script configures your Windows service to use your default JVM. This setup usually defaults to a client VM.
    If you have installed a JDK, you might consider using the gitblitw.exe utility to manually specify the server VM.

    1. Execute gitblitw.exe
    2. On the Java tab uncheck Use default.
    3. Manually navigate your filesystem and specify the server VM with the ... button
      Java Virtual Machine:
      C:Program FilesJavajre6inserverjvm.dll

     

     

     

    服务运行成功之后,假如通过https进行push的话,需要配置证书。

    否则会提示fatal: unable to access url: SSL certificate problem: self signed certificate in certificate chain

     

    有可能无法启动服务,可以查看日志gitblit-1.8.0logs

    [2017-05-19 17:29:14] [info] Commons Daemon procrun (1.0.10.0 64-bit) started
    [2017-05-19 17:29:14] [error] Unable to open the Service Manager
    [2017-05-19 17:29:14] [error] Access is denied.
    [2017-05-19 17:29:14] [error] Commons Daemon procrun failed with exit value: 8 (Failed to install service)
    [2017-05-19 17:29:14] [error] Access is denied.

    http://stackoverflow.com/questions/13321132/apache-commons-daemon-procrun-access-is-denied-on-windows-7

    Try running your command from a prompt with admin rights.

    Right-click on the CMD.exe icon and select "Run as administrator" to start it that way.

    用管理员权限打开cmd,然后进入installservice.cmd所在的目录。用命令行打开。【需要注意的是,必须使用这种方法来处理,右键管理员权限运行是不行的】

    8.配置成可以使用Windows 域账号进行登录

    realm.authenticationProviders = windows

    9.配置邮件

    http://gitblit.com/setup_hooks.html 

    10.push failed for branch (n/a (unpacker error))

    git.checkReferencedObjectsAreReachable = false

    配置汇总

    git.repositoriesFolder = D:/GitServerRepository
    server.httpPort = 8080
    realm.authenticationProviders = windows
    federation.allowProposals = true
    git.checkReferencedObjectsAreReachable = false

    =====================================================================

    Gitblit介绍

    What is Gitblit?

    Gitblit is an open-source, pure Java stack for managing, viewing, and serving Git repositories.
    It's designed primarily as a tool for small workgroups who want to host centralized repositories.

    GO: Single-Stack Solution

    Gitblit GO is an integrated, single-stack solution based on Jetty.

    You do not need Apache httpd, Perl, Git, or Gitweb. Should you want to use some or all of those, you still can; Gitblit plays nice with the other kids on the block.

    This is what you should download if you want to go from zero to Git in less than 5 mins.

    WAR: For Your Servlet Container

    Gitblit WAR is what you should download if you already have a servlet container available that you wish to use. Jetty 6/7/8 and Tomcat 6/7 are known to work. Generally, any Servlet 2.5 or Servlet 3.0 container should work.

    You decide how to use Gitblit

    Gitblit can be used as a dumb repository viewer with no administrative controls or user accounts.
    Gitblit can be used as a complete Git stack for cloning, pushing, and repository access control.
    Gitblit can be used without any other Git tooling (including actual Git) or it can cooperate with your established tools.

    All Transports

    The SSH, HTTP, & GIT protocols are supported and ready-to-go out of the box.

    Issue tracking with branch-based pull requests

    Gitblit blends elements of GitHub, BitBucket, and Gerrit to provide a streamlined collaboration workflow based on branches within the primary repository.

    =============================

    Tickets

    http://gitblit.com/tickets_setup.html

    =================================

    Gitblit进行迁移的时候,需要同步用户设置,

    git.repositoriesFolder = F:/GitServer
    server.httpPort = 8080
    server.httpsPort = 8443

    Any important changes to the setting keys or default values will always be mentioned in the release log.

    Gitblit v0.8.0 introduced a new default user service implementation which serializes and deserializes user objects into users.conf.

    users.conf file will be automatically created from an existing users.properties file on the first launch after an upgrade.

    To use the users.conf service,realm.userService=users.conf must be set.

    This revised user service allows for more sophisticated Gitblit user objects and will facilitate the development of more advanced features without adding the complexity of an embedded SQL database.

    users.properties and its user service implementation are deprecated as of v0.8.0.

    users.properties会在服务器启动的时候,自动转换成users.conf

    ===============================

  • 相关阅读:
    Java基础教程:对象比较排序
    算法:深度优先搜索
    微信小程序开发:学习笔记[5]——JavaScript脚本
    微信小程序开发:学习笔记[4]——样式布局
    设计模式:学习笔记(8)——装饰器模式
    设计模式:学习笔记(7)——原型模式
    设计模式——单例模式解析
    玩转Android之数据库框架greenDAO3.0使用指南
    Android开发工具——Android Studio调试技巧
    VR开发的烦恼——范围限制
  • 原文地址:https://www.cnblogs.com/chucklu/p/3808692.html
Copyright © 2011-2022 走看看