首頁 > 軟體

在Ubuntu/Fedora/CentOS中安裝Gitblit

2020-06-16 18:03:43

Git是一款注重速度、資料完整性、分散式支援和非線性工作流的分散式版本控制工具。Git最初由Linus Torvalds在2005年為Linux核心開發而設計,如今已經成為被廣泛接受的版本控制系統。

和其他大多數分散式版本控制系統比起來,不像大多數用戶端-伺服器端的系統,每個Git工作目錄是一個完整的倉庫,帶有完整的歷史記錄和完整的版本跟蹤能力,不需要依賴網路或者中心伺服器。像Linux核心一樣,Git也是在GPLv2許可證下分發的自由軟體。

本篇教學我會演示如何安裝 gitlit 伺服器。gitlit的最新穩定版是1.6.2。Gitblit是一款開源、純Java開發的用於管理、瀏覽和提供Git倉庫服務的軟體。它被設計成一款為希望託管中心倉庫的小型工作組服務的工具。

  1. mkdir -p /opt/gitblit; cd /opt/gitblit; wget http://dl.bintray.com/gitblit/releases/gitblit-1.6.2.tar.gz

 

列出解壓後目錄內容:

  1. root@vps124229 [/opt/gitblit]# ls
  2. ./ docs/ gitblit-stop.sh* LICENSE service-Ubuntu.sh*
  3. ../ ext/ install-service-CentOS.sh* migrate-tickets.sh*
  4. add-indexed-branch.sh* gitblit-1.6.2.tar.gz install-service-Fedora.sh* NOTICE
  5. authority.sh* gitblit.jar install-service-ubuntu.sh* reindex-tickets.sh*
  6. data/ gitblit.sh* java-proxy-config.sh* service-centos.sh*

預設組態檔在data/gitblit.properties,你可以根據需要自己修改。

 

啟動gitlit服務:

通過service命令:

  1. root@vps124229 [/opt/gitblit]# cp service-centos.sh /etc/init.d/gitblit
  2. root@vps124229 [/opt/gitblit]# chkconfig --add gitblit
  3. root@vps124229 [/opt/gitblit]# service gitblit start
  4. Starting gitblit server
  5. .

手動啟動:

  1. root@vps124229 [/opt/gitblit]# java -jar gitblit.jar --baseFolder data
  2. 2015-01-1009:16:53[INFO ]*****************************************************************
  3. 2015-01-1009:16:53[INFO ] _____ _ _ _ _ _ _
  4. 2015-01-1009:16:53[INFO ]| __ (_)||||||(_)||
  5. 2015-01-1009:16:53[INFO ]|| / _ ||_ ||__ || _ ||_
  6. 2015-01-1009:16:53[INFO ]|| __ ||| __||'_ | || || __|
  7. 2015-01-10 09:16:53 [INFO ] | |_ | || |_ | |_) || || || |_
  8. 2015-01-10 09:16:53 [INFO ] ____/|_| __||_.__/ |_||_| __|
  9. 2015-01-10 09:16:53 [INFO ] Gitblit v1.6.2
  10. 2015-01-10 09:16:53 [INFO ]
  11. 2015-01-10 09:16:53 [INFO ] *****************************************************************
  12. 2015-01-10 09:16:53 [INFO ] Running on Linux (3.8.13-xxxx-grs-ipv6-64-vps)
  13. 2015-01-10 09:16:53 [INFO ] Logging initialized @842ms
  14. 2015-01-10 09:16:54 [INFO ] Using JCE Unlimited Strength Jurisdiction Policy files
  15. 2015-01-10 09:16:54 [INFO ] Setting up HTTPS transport on port 8443
  16. 2015-01-10 09:16:54 [INFO ] certificate alias = localhost
  17. 2015-01-10 09:16:54 [INFO ] keyStorePath = /opt/gitblit/data/serverKeyStore.jks
  18. 2015-01-10 09:16:54 [INFO ] trustStorePath = /opt/gitblit/data/serverTrustStore.jks
  19. 2015-01-10 09:16:54 [INFO ] crlPath = /opt/gitblit/data/certs/caRevocationList.crl
  20. 2015-01-10 09:16:54 [INFO ] Shutdown Monitor listening on port 8081
  21. 2015-01-10 09:16:54 [INFO ] jetty-9.2.3.v20140905
  22. 2015-01-10 09:16:55 [INFO ] NO JSP Support for /, did not find org.apache.jasper.servlet.JspServlet
  23. 2015-01-10 09:16:55 [INFO ]
  24. 2015-01-10 09:16:55 [INFO ] ----[com.gitblit.manager.IRuntimeManager]----
  25. 2015-01-10 09:16:55 [INFO ] Basefolder : /opt/gitblit/data
  26. 2015-01-10 09:16:55 [INFO ] Settings : /opt/gitblit/data/gitblit.properties
  27. 2015-01-10 09:16:55 [INFO ] JVM timezone: America/Montreal (EST -0500)
  28. 2015-01-10 09:16:55 [INFO ] App timezone: America/Montreal (EST -0500)
  29. 2015-01-10 09:16:55 [INFO ] JVM locale : en_US
  30. 2015-01-10 09:16:55 [INFO ] App locale : <client>
  31. 2015-01-10 09:16:55 [INFO ] PF4J runtime mode is 'deployment'
  32. 2015-01-10 09:16:55 [INFO ] Enabled plugins: []
  33. 2015-01-10 09:16:55 [INFO ] Disabled plugins: []
  34. 2015-01-10 09:16:55 [INFO ]
  35. 2015-01-10 09:16:55 [INFO ] ----[com.gitblit.manager.INotificationManager]----
  36. 2015-01-10 09:16:55 [WARN ] Mail service disabled.
  37. 2015-01-10 09:16:55 [INFO ]
  38. 2015-01-10 09:16:55 [INFO ] ----[com.gitblit.manager.IUserManager]----
  39. 2015-01-10 09:16:55 [INFO ] ConfigUserService(/opt/gitblit/data/users.conf)
  40. 2015-01-10 09:16:55 [INFO ]
  41. 2015-01-10 09:16:55 [INFO ] ----[com.gitblit.manager.IAuthenticationManager]----
  42. 2015-01-10 09:16:55 [INFO ] External authentication disabled.
  43. 2015-01-10 09:16:55 [INFO ]
  44. 2015-01-10 09:16:55 [INFO ] ---- [com.gitblit.transport.ssh.IPublicKeyManager]----
  45. 2015-01-10 09:16:55 [INFO ] FileKeyManager (/opt/gitblit/data/ssh)
  46. 2015-01-10 09:16:55 [INFO ]
  47. 2015-01-10 09:16:55 [INFO ] ----[com.gitblit.manager.IRepositoryManager]----
  48. 2015-01-10 09:16:55 [INFO ] Repositories folder : /opt/gitblit/data/git
  49. 2015-01-10 09:16:55 [INFO ] Identifying repositories...
  50. 2015-01-10 09:16:55 [INFO ] 0 repositories identified with calculated folder sizes in 11 msecs
  51. 2015-01-10 09:16:55 [INFO ] Lucene will process indexed branches every 2 minutes.
  52. 2015-01-10 09:16:55 [INFO ] Garbage Collector (GC) is disabled.
  53. 2015-01-10 09:16:55 [INFO ] Mirror service is disabled.
  54. 2015-01-10 09:16:55 [INFO ] Alias UTF-9 & UTF-18 encodings as UTF-8 in JGit
  55. 2015-01-10 09:16:55 [INFO ] Preparing 14 day commit cache. please wait...
  56. 2015-01-10 09:16:55 [INFO ] 0 repositories identified with calculated folder sizes in 0 msecs
  57. 2015-01-10 09:16:55 [INFO ] built 14 day commit cache of 0 commits across 0 repositories in 2 msecs
  58. 2015-01-10 09:16:55 [INFO ]
  59. 2015-01-10 09:16:55 [INFO ] ----[com.gitblit.manager.IProjectManager]----
  60. 2015-01-10 09:16:55 [INFO ]
  61. 2015-01-10 09:16:55 [INFO ] ----[com.gitblit.manager.IFederationManager]----
  62. 2015-01-10 09:16:55 [INFO ]
  63. 2015-01-10 09:16:55 [INFO ] ----[com.gitblit.manager.IGitblit]----
  64. 2015-01-10 09:16:55 [INFO ] Starting services manager...
  65. 2015-01-10 09:16:55 [INFO ] Federation passphrase is blank! This server can not be PULLED from.
  66. 2015-01-10 09:16:55 [INFO ] Fanout PubSub service is disabled.
  67. 2015-01-10 09:16:55 [INFO ] Git Daemon is listening on 0.0.0.0:9418
  68. 2015-01-10 09:16:55 [INFO ] SSH Daemon (NIO2) is listening on 0.0.0.0:29418
  69. 2015-01-10 09:16:55 [WARN ] No ticket service configured.
  70. 2015-01-10 09:16:55 [INFO ]
  71. 2015-01-10 09:16:55 [INFO ] ----[com.gitblit.manager.IPluginManager]----
  72. 2015-01-10 09:16:55 [INFO ] No plugins
  73. 2015-01-10 09:16:55 [INFO ]
  74. 2015-01-10 09:16:55 [INFO ] All managers started.

開啟瀏覽器,依據你的設定進入http://localhost:8080 或者 https://localhost:8443。 輸入預設的管理員授權:admin / admin 並點選Login 按鈕

 

新增使用者:

 

新增倉庫:

 

用命令列建立新的倉庫:

  1. touch README.md
  2. git init
  3. git add README.md
  4. git commit -m "first commit"
  5. git remote add origin ssh://admin@142.4.202.70:29418/Programming.git
  6. git push -u origin master

 

從命令列推播已有的倉庫:

  1. git remote add origin ssh://admin@142.4.202.70:29418/Programming.git
  2. git push -u origin master

完成!

GitHub 教學系列文章: 

GitHub 使用教學圖文詳解  http://www.linuxidc.com/Linux/2014-09/106230.htm 

Git 標籤管理詳解 http://www.linuxidc.com/Linux/2014-09/106231.htm 

Git 分支管理詳解 http://www.linuxidc.com/Linux/2014-09/106232.htm 

Git 遠端倉庫詳解 http://www.linuxidc.com/Linux/2014-09/106233.htm 

Git 本地倉庫(Repository)詳解 http://www.linuxidc.com/Linux/2014-09/106234.htm 

Git 伺服器搭建與用戶端安裝  http://www.linuxidc.com/Linux/2014-05/101830.htm 

Git 概述 http://www.linuxidc.com/Linux/2014-05/101829.htm 

分享實用的GitHub 使用教學 http://www.linuxidc.com/Linux/2014-04/100556.htm 


IT145.com E-mail:sddin#qq.com