windows 系統下 安裝 gitblit 教程

Gitblit官方網站
本文實例版本號:1.8
下載完畢後,解壓至任意位置。html

本文筆者系統環境說明:java

  1. windows Server 2008 R2 數據中心版 64位
  2. Java 8 JRE 32位

1. gitblit 服務配置

默認配置文件

{gitblit安裝目錄}\data\defaults.properties

若是須要使用其餘配置文件,須要修改同目錄下的配置引導文件內的 include

{gitblit安裝目錄}\data\gitblit.properties
#值爲你新建的配置文件
include = my.properties

基本服務配置

1. 設置倉庫路徑

該參數爲必填內容 git

#自定義倉庫目錄
git.repositoriesFolder = C:/git/GitRepository

2. 服務端口設置

重要,必須修改,文檔內的參數:_請填寫實際搭建的服務器IP,域名,端口_web

#服務的標準 http 端口。<= 0禁用此鏈接器。
# 默認爲 0
server.httpPort = <端口號>;
    
#安全/ SSL https 端口服務。<= 0禁用此鏈接器。
# 默認 8443
server.httpsPort = <端口號>
    
#重定向功能 http => https,默認爲 關閉狀態
server.redirectToHttpsPort = false
    
# 綁定IP,默認爲空,監聽全部IP地址的 http 端口
server.httpBindInterface = <ip/或者不填>
    
# 綁定IP,默認爲空,監聽全部IP地址的 https 端口
server.httpsBindInterface = <ip/或者不填>

SSH端口redis

#默認監聽 ssh 端口 29418
git.sshPort = <端口號>
    
#填寫IP 默認爲空
git.sshBindInterface = <ip/或者不填>
    
#填寫域名 默認爲空
git.sshAdvertisedHost = <域名>
    
#填寫IP 默認爲空
git.sshAdvertisedPort = <ip/或者不填>

3. 啓動Gitblit服務

  1. 手動啓動數據庫

    # 雙擊執行,成功執行文件,並無自動關閉,說明成功運行Gitblit服務
    {gitblit安裝目錄}\gitblit.cmd
  2. 手動關閉windows

    # 也能夠點擊關閉 啓動的 cmd 窗口 服務即終止
    # 或者雙擊執行,自動關閉啓動的 cmd 窗口
    {gitblit安裝目錄}\gitblit-stop.cmd

4. Giblit 服務隨系統自動啓動

  1. 注意事項安全

    Gitblit(1.8版本),自動啓動須要修改,自帶的服務添加文件服務器

    #服務添加腳本
    {gitblit安裝目錄}\installService.cmd
    
    #服務刪除腳本
    {gitblit安裝目錄}\uninstallService.cmd
  2. 編輯修改文件oracle

    選擇 服務添加腳本 -> 右鍵選擇 編輯

    #修改 默認 ARCH = amd64
    #執行無效,修改成 x86
    SET ARCH=x86
    
    #新建變量,指定gitblit服務文件路徑,下面是實例安裝目錄 如:C:\git\gitblit
    SET CD = <gitblit安裝目錄>
    
    #修改該參數爲空
    --StartParams="" ^
  3. 添加至服務

    筆者配置過程發現,因爲某個問題,雙擊 服務添加腳本 雖然添加進系統服務,也會沒法啓動, 因此推薦,保險作法,經過 cmd 控制檯,手動啓動,添加服務腳本。

    #打開文件所在目錄 如:C:\git\gitblit
    cmd >cd <gitblit安裝目錄>
    
    #執行安裝腳本 輸入 installService.cmd
    cmd C:\git\gitblit > installService.cmd
  4. 檢查服務狀態

    1. 打開任務管理器,查看 gitblit 服務是否正在運行

      WX20180111-154558@2x

    2. 運行 {gitblit安裝目錄}\gitblitw.exe 測試,手動 開啓,關閉,是否正常。

      WX20180111-155050@2x

5. 高級設置(經常使用)

  1. 全局屬性

    # 新存儲庫的默認訪問限制。
    # 有效值爲NONE,PUSH,CLONE,VIEW 
    # NONE = 匿名視圖,克隆和推
    # PUSH = 匿名視圖&克隆和驗證推
    # CLONE = 匿名視圖,驗證克隆和推
    # VIEW = 驗證視圖,克隆,按
    git.defaultAccessRestriction = PUSH
    
    #新存儲庫的默認受權控制。
    #有效值進行身份驗證,並命名爲
    #AUTHENTICATED =任何身份驗證的用戶授予限制訪問
    #NAMED =只有指定的用戶/團隊被授予限制訪問
    git.defaultAuthorizationControl = NAMED
  2. 開啓用戶認證,非公開可瀏覽模式

    #默認是 false
    web.authenticateViewPages = true
  3. 使用windows基本認證,必須非公開模式下生效

    #默認是 false 
    web.enforceHttpBasicAuthentication = true
  4. 站點名稱

    # 默認空白 官方說明:If blank Gitblit is displayed.
    web.siteName = git
  5. 連接生成

    #使用自定義端口時須要填寫 如 非80 443 默認爲 空
    #此URL的主機名將被提取用於SSH和GIT協議存儲庫
    # e.g. web.canonicalUrl = https://dev.gitblit.com
    #      web.canonicalUrl = https://dev.gitblit.com:8443
    web.canonicalUrl = https://<域名>
    #填寫正確的域名
  6. 工單服務,【默認沒有開啓】

    # 設置工單數據存儲方式 三選一
    # 一:.git目錄下的文件系統中
    # com.gitblit.tickets.FileTicketService
    # 二:獨立的分支上 這使您能夠輕鬆地將整個故障單歷史記錄複製到客戶端工做副本或鏡像。
    # com.gitblit.tickets.BranchTicketService
    # 三:Redis數據庫服務
    # com.gitblit.tickets.RedisTicketService
    tickets.service = com.gitblit.tickets.BranchTicketService
    # Redis數據庫服務 選擇使用 redis 數據庫
    tickets.redis.url = redis://(:{password}@){hostname}:{port}(/{databaseId})
    
    tickets.redis.url = redis://localhost:6379
    tickets.redis.url = redis://:password@localhost:6379/2
  7. robots文件位置

    #搜索引擎機器人的道德文件
    #默認位置 {安裝目錄}\data\robots.txt
    web.robots.txt = ${baseFolder}/robots.txt
  8. 聯合註冊

    # 向非管理員用戶顯示聯合註冊(無令牌)和當前的狀態
    web.showFederationRegistrations = false 
    
    # 這是web.authenticateViewPages = true 時顯示的消息
    # 這能夠指向一個包含Markdown內容的文件。
    # 指定「gitblit」使用內部登陸消息。
    web.loginMessage = gitblit
  9. 時區

    # 修改最後修改時間格式
    web.datetimestampLongFormat = yyyy-MM-dd HH:mm:ss, EEEE
  10. 郵件設置

    # IP或SMTP服務器主機名
    # 默認爲空 不啓用
    mail.server = <IP或SMTP服務器主機名>
    
    # 端口設置 默認 25
    mail.port = <端口>
    
    #郵件認證模式 tls
    #默認 false
    mail.starttls = false
    
    # 郵件服務器認證
    mail.username = <帳號>
    mail.password = <密碼>
    
    #顯示郵件發送地址 收件人顯示的,發送人郵箱
    mail.fromAddress = noreply@example.com
    
    # 管理員郵件名稱 管理員郵箱
    mail.adminAddresses = noreply@example.com
  11. 羣發郵件通知

    #發送推送電子郵件通知的電子郵件地址列表。
    #這個鍵目前須要使用sendemail.groovy鉤子腳本。
    #若是您在groovy.postReceiveScripts中設置了sendemail.groovy,
    #那麼將全部存儲庫的電子郵件通知(無論訪問限制!)
    #發送到這些地址。
    mail.mailingLists =

6. 更多設置請查看配置文件與官方文檔說明

2. Gitblit Https SSL 證書修改

1. 綁定證書

# 指定證書名稱 
# 默認名稱 localhost
server.certificateAlias = localhost
    
# 證書庫密碼與證書密碼必須一致 方便管理
# 默認密碼 gitblit
    
#若是您使用的是來自Oracle的官方JRE或JDK,
#則您的JVM 可能沒有 JCE Unlimited Strength Jurisdiction 策略文件。
#由於這個,你的存儲/密鑰密碼不能超過7個字符。若是你須要的話
#您可能須要更長的密碼才能
#從Oracle 安裝 JCE Unlimited Strength Jurisdiction 策略文件。
    
server.storePassword = gitblit

JCE Unlimited Strength Jurisdiction 策略文件 從 Oracle 官網下載

#將政策文件,解壓至 Java 安裝目錄內的下面路徑文件夾便可
{java安裝目錄}\lib\security

2. Https域證書修改

關於ssl證書,gitblit 啓動時,會根據配置文件去檢測一些文件,若是沒有所需文件,將會根據配置文件進行生成。其中就包括證書庫文件,位置以下:

{gitblit安裝目錄}\data\serverKeyStore.jks
  1. 準備工做

    1. 確保當前已中止Gitblit服務;

    2. Portecle 點擊打開網址 :用於編輯證書文件,須要Java環境運行;

    3. 有效的域名證書,證書必須包含證書與私鑰,以 214351170410809.pfx 爲例子;

    4. 刪除舊文件

      #在證書目錄下
      {gitblit安裝目錄}\data\certs
      
      #刪除如下文件
      {gitblit安裝目錄}\data\certs\ca.cer
      {gitblit安裝目錄}\data\certs\caKeyStore.p12
      {gitblit安裝目錄}\data\certs\caRevocationList.crl
      
      #新文件會在Gitblit服務啓動的時候,從新生成
  2. 域名證書格式轉換

    1. 使用 Portecle 工具,編輯 214351170410809.pfx 域名證書:

      1. 雙擊運行 Portecle.jar =>能夠直接將證書拖入對話框內->輸入證書密碼->選擇證書->右鍵選擇導出->選擇類型爲:證書與私鑰;格式爲:PKCS#12->輸入新的證書密碼,或者舊密碼保持密碼不變->選擇導出目錄->導出完成

      2. 視頻實例,(密碼:yxwl001)

        點擊觀看視頻

    2. 編輯gitblit證書庫

      1. 使用 Portecle 工具,編輯 serverKeyStore.jks

        1. 雙擊運行 Portecle.jar => 直接將文件拖入對話框->輸入證書庫密碼->選中默認證書->右鍵選擇刪除->點擊導入->選擇剛纔導出的證書->輸入證書密碼->查看證書信息->填寫證書名稱->確認證書密碼->導入完成提示->點擊保存當前文件

        2. 視頻實例,(密碼:yxwl002)

          點擊觀看視頻

    3. 成功保存後,啓動Gitblit服務,成功啓動說明成功替換證書。

相關文章
相關標籤/搜索