You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

gitblit.properties 61KB

12 年之前
12 年之前
10 年之前
10 年之前
10 年之前
10 年之前
12 年之前
12 年之前
12 年之前
12 年之前
12 年之前
12 年之前
Ticket tracker with patchset contributions A basic issue tracker styled as a hybrid of GitHub and BitBucket issues. You may attach commits to an existing ticket or you can push a single commit to create a *proposal* ticket. Tickets keep track of patchsets (one or more commits) and allow patchset rewriting (rebase, amend, squash) by detecing the non-fast-forward update and assigning a new patchset number to the new commits. Ticket tracker -------------- The ticket tracker stores tickets as an append-only journal of changes. The journals are deserialized and a ticket is built by applying the journal entries. Tickets are indexed using Apache Lucene and all queries and searches are executed against this Lucene index. There is one trade-off to this persistence design: user attributions are non-relational. What does that mean? Each journal entry stores the username of the author. If the username changes in the user service, the journal entry will not reflect that change because the values are hard-coded. Here are a few reasons/justifications for this design choice: 1. commit identifications (author, committer, tagger) are non-relational 2. maintains the KISS principle 3. your favorite text editor can still be your administration tool Persistence Choices ------------------- **FileTicketService**: stores journals on the filesystem **BranchTicketService**: stores journals on an orphan branch **RedisTicketService**: stores journals in a Redis key-value datastore It should be relatively straight-forward to develop other backends (MongoDB, etc) as long as the journal design is preserved. Pushing Commits --------------- Each push to a ticket is identified as a patchset revision. A patchset revision may add commits to the patchset (fast-forward) OR a patchset revision may rewrite history (rebase, squash, rebase+squash, or amend). Patchset authors should not be afraid to polish, revise, and rewrite their code before merging into the proposed branch. Gitblit will create one ref for each patchset. These refs are updated for fast-forward pushes or created for rewrites. They are formatted as `refs/tickets/{shard}/{id}/{patchset}`. The *shard* is the last two digits of the id. If the id < 10, prefix a 0. The *shard* is always two digits long. The shard's purpose is to ensure Gitblit doesn't exceed any filesystem directory limits for file creation. **Creating a Proposal Ticket** You may create a new change proposal ticket just by pushing a **single commit** to `refs/for/{branch}` where branch is the proposed integration branch OR `refs/for/new` or `refs/for/default` which both will use the default repository branch. git push origin HEAD:refs/for/new **Updating a Patchset** The safe way to update an existing patchset is to push to the patchset ref. git push origin HEAD:refs/heads/ticket/{id} This ensures you do not accidentally create a new patchset in the event that the patchset was updated after you last pulled. The not-so-safe way to update an existing patchset is to push using the magic ref. git push origin HEAD:refs/for/{id} This push ref will update an exisitng patchset OR create a new patchset if the update is non-fast-forward. **Rebasing, Squashing, Amending** Gitblit makes rebasing, squashing, and amending patchsets easy. Normally, pushing a non-fast-forward update would require rewind (RW+) repository permissions. Gitblit provides a magic ref which will allow ticket participants to rewrite a ticket patchset as long as the ticket is open. git push origin HEAD:refs/for/{id} Pushing changes to this ref allows the patchset authors to rebase, squash, or amend the patchset commits without requiring client-side use of the *--force* flag on push AND without requiring RW+ permission to the repository. Since each patchset is tracked with a ref it is easy to recover from accidental non-fast-forward updates. Features -------- - Ticket tracker with status changes and responsible assignments - Patchset revision scoring mechanism - Update/Rewrite patchset handling - Close-on-push detection - Server-side Merge button for simple merges - Comments with Markdown syntax support - Rich mail notifications - Voting - Mentions - Watch lists - Querying - Searches - Partial miletones support - Multiple backend options
10 年之前
Ticket tracker with patchset contributions A basic issue tracker styled as a hybrid of GitHub and BitBucket issues. You may attach commits to an existing ticket or you can push a single commit to create a *proposal* ticket. Tickets keep track of patchsets (one or more commits) and allow patchset rewriting (rebase, amend, squash) by detecing the non-fast-forward update and assigning a new patchset number to the new commits. Ticket tracker -------------- The ticket tracker stores tickets as an append-only journal of changes. The journals are deserialized and a ticket is built by applying the journal entries. Tickets are indexed using Apache Lucene and all queries and searches are executed against this Lucene index. There is one trade-off to this persistence design: user attributions are non-relational. What does that mean? Each journal entry stores the username of the author. If the username changes in the user service, the journal entry will not reflect that change because the values are hard-coded. Here are a few reasons/justifications for this design choice: 1. commit identifications (author, committer, tagger) are non-relational 2. maintains the KISS principle 3. your favorite text editor can still be your administration tool Persistence Choices ------------------- **FileTicketService**: stores journals on the filesystem **BranchTicketService**: stores journals on an orphan branch **RedisTicketService**: stores journals in a Redis key-value datastore It should be relatively straight-forward to develop other backends (MongoDB, etc) as long as the journal design is preserved. Pushing Commits --------------- Each push to a ticket is identified as a patchset revision. A patchset revision may add commits to the patchset (fast-forward) OR a patchset revision may rewrite history (rebase, squash, rebase+squash, or amend). Patchset authors should not be afraid to polish, revise, and rewrite their code before merging into the proposed branch. Gitblit will create one ref for each patchset. These refs are updated for fast-forward pushes or created for rewrites. They are formatted as `refs/tickets/{shard}/{id}/{patchset}`. The *shard* is the last two digits of the id. If the id < 10, prefix a 0. The *shard* is always two digits long. The shard's purpose is to ensure Gitblit doesn't exceed any filesystem directory limits for file creation. **Creating a Proposal Ticket** You may create a new change proposal ticket just by pushing a **single commit** to `refs/for/{branch}` where branch is the proposed integration branch OR `refs/for/new` or `refs/for/default` which both will use the default repository branch. git push origin HEAD:refs/for/new **Updating a Patchset** The safe way to update an existing patchset is to push to the patchset ref. git push origin HEAD:refs/heads/ticket/{id} This ensures you do not accidentally create a new patchset in the event that the patchset was updated after you last pulled. The not-so-safe way to update an existing patchset is to push using the magic ref. git push origin HEAD:refs/for/{id} This push ref will update an exisitng patchset OR create a new patchset if the update is non-fast-forward. **Rebasing, Squashing, Amending** Gitblit makes rebasing, squashing, and amending patchsets easy. Normally, pushing a non-fast-forward update would require rewind (RW+) repository permissions. Gitblit provides a magic ref which will allow ticket participants to rewrite a ticket patchset as long as the ticket is open. git push origin HEAD:refs/for/{id} Pushing changes to this ref allows the patchset authors to rebase, squash, or amend the patchset commits without requiring client-side use of the *--force* flag on push AND without requiring RW+ permission to the repository. Since each patchset is tracked with a ref it is easy to recover from accidental non-fast-forward updates. Features -------- - Ticket tracker with status changes and responsible assignments - Patchset revision scoring mechanism - Update/Rewrite patchset handling - Close-on-push detection - Server-side Merge button for simple merges - Comments with Markdown syntax support - Rich mail notifications - Voting - Mentions - Watch lists - Querying - Searches - Partial miletones support - Multiple backend options
10 年之前
12 年之前
12 年之前
12 年之前
12 年之前
12 年之前
12 年之前
12 年之前
12 年之前
12 年之前
12 年之前
12 年之前
12 年之前
11 年之前
10 年之前
12 年之前
12 年之前
12 年之前
12 年之前
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911
  1. #
  2. # Gitblit Settings
  3. #
  4. # This settings file supports parameterization from the command-line for the
  5. # following command-line parameters:
  6. #
  7. # --baseFolder ${baseFolder} SINCE 1.2.1
  8. #
  9. # Settings that support ${baseFolder} parameter substitution are indicated with the
  10. # BASEFOLDER attribute. If the --baseFolder argument is unspecified, ${baseFolder}
  11. # and it's trailing / will be discarded from the setting value leaving a relative
  12. # path that is equivalent to pre-1.2.1 releases.
  13. #
  14. # e.g. "${baseFolder}/git" becomes "git", if --baseFolder is unspecified
  15. #
  16. # Git Servlet Settings
  17. #
  18. # Base folder for repositories.
  19. # This folder may contain bare and non-bare repositories but Gitblit will only
  20. # allow you to push to bare repositories.
  21. # Use forward slashes even on Windows!!
  22. # e.g. c:/gitrepos
  23. #
  24. # SINCE 0.5.0
  25. # RESTART REQUIRED
  26. # BASEFOLDER
  27. git.repositoriesFolder = ${baseFolder}/git
  28. # Build the available repository list at startup and cache this list for reuse.
  29. # This reduces disk io when presenting the repositories page, responding to rpcs,
  30. # etc, but it means that Gitblit will not automatically identify repositories
  31. # added or deleted by external tools.
  32. #
  33. # For this case you can use curl, wget, etc to issue an rpc request to clear the
  34. # cache (e.g. https://localhost/rpc?req=CLEAR_REPOSITORY_CACHE)
  35. #
  36. # SINCE 1.1.0
  37. git.cacheRepositoryList = true
  38. # Search the repositories folder subfolders for other repositories.
  39. # Repositories MAY NOT be nested (i.e. one repository within another)
  40. # but they may be grouped together in subfolders.
  41. # e.g. c:/gitrepos/libraries/mylibrary.git
  42. # c:/gitrepos/libraries/myotherlibrary.git
  43. #
  44. # SINCE 0.5.0
  45. git.searchRepositoriesSubfolders = true
  46. # Maximum number of folders to recurse into when searching for repositories.
  47. # The default value, -1, disables depth limits.
  48. #
  49. # SINCE 1.1.0
  50. git.searchRecursionDepth = -1
  51. # List of regex exclusion patterns to match against folders found in
  52. # *git.repositoriesFolder*.
  53. # Use forward slashes even on Windows!!
  54. # e.g. test/jgit\.git
  55. #
  56. # SPACE-DELIMITED
  57. # CASE-SENSITIVE
  58. # SINCE 1.1.0
  59. git.searchExclusions =
  60. # List of regex url patterns for extracting a repository name when locating
  61. # submodules.
  62. # e.g. git.submoduleUrlPatterns = .*?://github.com/(.*) will extract
  63. # *gitblit/gitblit.git* from *git://github.com/gitblit/gitblit.git*
  64. # If no matches are found then the submodule repository name is assumed to be
  65. # whatever trails the last / character. (e.g. gitblit.git).
  66. #
  67. # SPACE-DELIMITED
  68. # CASE-SENSITIVE
  69. # SINCE 1.1.0
  70. git.submoduleUrlPatterns = .*?://github.com/(.*)
  71. # Specify the interface for Git Daemon to bind it's service.
  72. # You may specify an ip or an empty value to bind to all interfaces.
  73. # Specifying localhost will result in Gitblit ONLY listening to requests to
  74. # localhost.
  75. #
  76. # SINCE 1.3.0
  77. # RESTART REQUIRED
  78. git.daemonBindInterface =
  79. # port for serving the Git Daemon service. <= 0 disables this service.
  80. # On Unix/Linux systems, ports < 1024 require root permissions.
  81. # Recommended value: 9418
  82. #
  83. # SINCE 1.3.0
  84. # RESTART REQUIRED
  85. git.daemonPort = 9418
  86. # The port for serving the SSH service. <= 0 disables this service.
  87. # On Unix/Linux systems, ports < 1024 require root permissions.
  88. # Recommended value: 29418
  89. #
  90. # SINCE 1.5.0
  91. # RESTART REQUIRED
  92. git.sshPort = 29418
  93. # Specify the interface for the SSH daemon to bind its service.
  94. # You may specify an ip or an empty value to bind to all interfaces.
  95. # Specifying localhost will result in Gitblit ONLY listening to requests to
  96. # localhost.
  97. #
  98. # SINCE 1.5.0
  99. # RESTART REQUIRED
  100. git.sshBindInterface =
  101. # Specify the SSH key manager to use for retrieving, storing, and removing
  102. # SSH keys.
  103. #
  104. # Valid key managers are:
  105. # com.gitblit.transport.ssh.FileKeyManager
  106. #
  107. # SINCE 1.5.0
  108. git.sshKeysManager = com.gitblit.transport.ssh.FileKeyManager
  109. # Directory for storing user SSH keys when using the FileKeyManager.
  110. #
  111. # SINCE 1.5.0
  112. git.sshKeysFolder= ${baseFolder}/ssh
  113. # SSH backend NIO2|MINA.
  114. #
  115. # The Apache Mina project recommends using the NIO2 backend.
  116. #
  117. # SINCE 1.5.0
  118. git.sshBackend = NIO2
  119. # Number of threads used to parse a command line submitted by a client over SSH
  120. # for execution, create the internal data structures used by that command,
  121. # and schedule it for execution on another thread.
  122. #
  123. # SINCE 1.5.0
  124. git.sshCommandStartThreads = 2
  125. # Allow push/pull over http/https with JGit servlet.
  126. # If you do NOT want to allow Git clients to clone/push to Gitblit set this
  127. # to false. You might want to do this if you are only using ssh:// or git://.
  128. # If you set this false, consider changing the *web.otherUrls* setting to
  129. # indicate your clone/push urls.
  130. #
  131. # SINCE 0.5.0
  132. git.enableGitServlet = true
  133. # If you want to restrict all git servlet access to those with valid X509 client
  134. # certificates then set this value to true.
  135. #
  136. # SINCE 1.2.0
  137. git.requiresClientCertificate = false
  138. # Enforce date checks on client certificates to ensure that they are not being
  139. # used prematurely and that they have not expired.
  140. #
  141. # SINCE 1.2.0
  142. git.enforceCertificateValidity = true
  143. # List of OIDs to extract from a client certificate DN to map a certificate to
  144. # an account username.
  145. #
  146. # e.g. git.certificateUsernameOIDs = CN
  147. # e.g. git.certificateUsernameOIDs = FirstName LastName
  148. #
  149. # SPACE-DELIMITED
  150. # SINCE 1.2.0
  151. git.certificateUsernameOIDs = CN
  152. # Only serve/display bare repositories.
  153. # If there are non-bare repositories in git.repositoriesFolder and this setting
  154. # is true, they will be excluded from the ui.
  155. #
  156. # SINCE 0.9.0
  157. git.onlyAccessBareRepositories = false
  158. # Specify the list of acceptable transports for pushes.
  159. # If this setting is empty, all transports are acceptable.
  160. #
  161. # Valid choices are: GIT HTTP HTTPS SSH
  162. #
  163. # SINCE 1.5.0
  164. # SPACE-DELIMITED
  165. git.acceptedPushTransports = HTTP HTTPS SSH
  166. # Allow an authenticated user to create a destination repository on a push if
  167. # the repository does not already exist.
  168. #
  169. # Administrator accounts can create a repository in any project.
  170. # These repositories are created with the default access restriction and authorization
  171. # control values. The pushing account is set as the owner.
  172. #
  173. # Non-administrator accounts with the CREATE role may create personal repositories.
  174. # These repositories are created as VIEW restricted for NAMED users.
  175. # The pushing account is set as the owner.
  176. #
  177. # SINCE 1.2.0
  178. git.allowCreateOnPush = true
  179. # Global setting to control anonymous pushes.
  180. #
  181. # This setting allows/rejects anonymous pushes at the level of the receive pack.
  182. # This trumps all repository config settings. While anonymous pushes are convenient
  183. # on your own box when you are a lone developer, they are not recommended for
  184. # any multi-user installation where accountability is required. Since Gitblit
  185. # tracks pushes and user accounts, allowing anonymous pushes compromises that
  186. # information.
  187. #
  188. # SINCE 1.4.0
  189. git.allowAnonymousPushes = false
  190. # The default access restriction for new repositories.
  191. # Valid values are NONE, PUSH, CLONE, VIEW
  192. # NONE = anonymous view, clone, & push
  193. # PUSH = anonymous view & clone and authenticated push
  194. # CLONE = anonymous view, authenticated clone & push
  195. # VIEW = authenticated view, clone, & push
  196. #
  197. # SINCE 1.0.0
  198. git.defaultAccessRestriction = PUSH
  199. # The default authorization control for new repositories.
  200. # Valid values are AUTHENTICATED and NAMED
  201. # AUTHENTICATED = any authenticated user is granted restricted access
  202. # NAMED = only named users/teams are granted restricted access
  203. #
  204. # SINCE 1.1.0
  205. git.defaultAuthorizationControl = NAMED
  206. # The prefix for a users personal repository directory.
  207. #
  208. # Personal user repositories are created in this directory, named by the user name
  209. # prefixed with the userRepositoryPrefix. For eaxmple, a user 'john' would have his
  210. # personal repositories in the directory '~john'.
  211. #
  212. # Cannot be an empty string. Also, absolute paths are changed to relative paths by
  213. # removing the first directory separator.
  214. #
  215. # It is not recommended to change this value AFTER your user's have created
  216. # personal repositories because it will break all permissions, ownership, and
  217. # repository push/pull operations.
  218. #
  219. # RESTART REQUIRED
  220. # SINCE 1.4.0
  221. git.userRepositoryPrefix = ~
  222. # The default incremental push tag prefix. Tag prefix applied to a repository
  223. # that has automatic push tags enabled and does not specify a custom tag prefix.
  224. #
  225. # If incremental push tags are enabled, the tips of each branch in the push will
  226. # be tagged with an increasing revision integer.
  227. #
  228. # e.g. refs/tags/r2345 or refs/tags/rev_2345
  229. #
  230. # SINCE 1.3.0
  231. git.defaultIncrementalPushTagPrefix = r
  232. # Controls creating a repository as --shared on Unix servers.
  233. #
  234. # In an Unix environment where mixed access methods exist for shared repositories,
  235. # the repository should be created with 'git init --shared' to make sure that
  236. # it can be accessed e.g. via ssh (user git) and http (user www-data).
  237. #
  238. # Valid values are the values available for the '--shared' option. The the manual
  239. # page for 'git init' for more information on shared repositories.
  240. #
  241. # SINCE 1.4.0
  242. git.createRepositoriesShared = false
  243. # Enable JGit-based garbage collection. (!!EXPERIMENTAL!!)
  244. #
  245. # USE AT YOUR OWN RISK!
  246. #
  247. # If enabled, the garbage collection executor scans all repositories once a day
  248. # at the hour of your choosing. The GC executor will take each repository "offline",
  249. # one-at-a-time, to check if the repository satisfies it's GC trigger requirements.
  250. #
  251. # While the repository is offline it will be inaccessible from the web UI or from
  252. # any of the other services (git, rpc, rss, etc).
  253. #
  254. # Gitblit's GC Executor MAY NOT PLAY NICE with the other Git kids on the block,
  255. # especially on Windows systems, so if you are using other tools please coordinate
  256. # their usage with your GC Executor schedule or do not use this feature.
  257. #
  258. # The GC algorithm complex and the JGit team advises caution when using their
  259. # young implementation of GC.
  260. #
  261. # http://wiki.eclipse.org/EGit/New_and_Noteworthy/2.1#Garbage_Collector_and_Repository_Storage_Statistics
  262. #
  263. # EXPERIMENTAL
  264. # SINCE 1.2.0
  265. # RESTART REQUIRED
  266. git.enableGarbageCollection = false
  267. # Hour of the day for the GC Executor to scan repositories.
  268. # This value is in 24-hour time.
  269. #
  270. # SINCE 1.2.0
  271. git.garbageCollectionHour = 0
  272. # The default minimum total filesize of loose objects to trigger early garbage
  273. # collection.
  274. #
  275. # You may specify a custom threshold for a repository in the repository's settings.
  276. # Common unit suffixes of k, m, or g are supported.
  277. #
  278. # SINCE 1.2.0
  279. git.defaultGarbageCollectionThreshold = 500k
  280. # The default period, in days, between GCs for a repository. If the total filesize
  281. # of the loose object exceeds *git.garbageCollectionThreshold* or the repository's
  282. # custom threshold, this period will be short-circuited.
  283. #
  284. # e.g. if a repository collects 100KB of loose objects every day with a 500KB
  285. # threshold and a period of 7 days, it will take 5 days for the loose objects to
  286. # be collected, packed, and pruned.
  287. #
  288. # OR
  289. #
  290. # if a repository collects 10KB of loose objects every day with a 500KB threshold
  291. # and a period of 7 days, it will take the full 7 days for the loose objects to be
  292. # collected, packed, and pruned.
  293. #
  294. # You may specify a custom period for a repository in the repository's settings.
  295. #
  296. # The minimum value is 1 day since the GC Executor only runs once a day.
  297. #
  298. # SINCE 1.2.0
  299. git.defaultGarbageCollectionPeriod = 7
  300. # Gitblit can automatically fetch ref updates for a properly configured mirror
  301. # repository.
  302. #
  303. # Requirements:
  304. # 1. you must manually clone the repository using native git
  305. # git clone --mirror git://somewhere.com/myrepo.git
  306. # 2. the "origin" remote must be the mirror source
  307. # 3. the "origin" repository must be accessible without authentication OR the
  308. # credentials must be embedded in the origin url (not recommended)
  309. #
  310. # Notes:
  311. # 1. "origin" SSH urls are untested and not likely to work
  312. # 2. mirrors cloned while Gitblit is running are likely to require clearing the
  313. # gitblit cache (link on the repositories page of an administrator account)
  314. # 3. Gitblit will automatically repair any invalid fetch refspecs with a "//"
  315. # sequence.
  316. #
  317. # SINCE 1.4.0
  318. # RESTART REQUIRED
  319. git.enableMirroring = false
  320. # Specify the period between update checks for mirrored repositories.
  321. # The shortest period you may specify between mirror update checks is 5 mins.
  322. #
  323. # SINCE 1.4.0
  324. # RESTART REQUIRED
  325. git.mirrorPeriod = 30 mins
  326. # Number of bytes of a pack file to load into memory in a single read operation.
  327. # This is the "page size" of the JGit buffer cache, used for all pack access
  328. # operations. All disk IO occurs as single window reads. Setting this too large
  329. # may cause the process to load more data than is required; setting this too small
  330. # may increase the frequency of read() system calls.
  331. #
  332. # Default on JGit is 8 KiB on all platforms.
  333. #
  334. # Common unit suffixes of k, m, or g are supported.
  335. # Documentation courtesy of the Gerrit project.
  336. #
  337. # SINCE 1.0.0
  338. # RESTART REQUIRED
  339. git.packedGitWindowSize = 8k
  340. # Maximum number of bytes to load and cache in memory from pack files. If JGit
  341. # needs to access more than this many bytes it will unload less frequently used
  342. # windows to reclaim memory space within the process. As this buffer must be shared
  343. # with the rest of the JVM heap, it should be a fraction of the total memory available.
  344. #
  345. # The JGit team recommends setting this value larger than the size of your biggest
  346. # repository. This ensures you can serve most requests from memory.
  347. #
  348. # Default on JGit is 10 MiB on all platforms.
  349. #
  350. # Common unit suffixes of k, m, or g are supported.
  351. # Documentation courtesy of the Gerrit project.
  352. #
  353. # SINCE 1.0.0
  354. # RESTART REQUIRED
  355. git.packedGitLimit = 10m
  356. # Maximum number of bytes to reserve for caching base objects that multiple deltafied
  357. # objects reference. By storing the entire decompressed base object in a cache Git
  358. # is able to avoid unpacking and decompressing frequently used base objects multiple times.
  359. #
  360. # Default on JGit is 10 MiB on all platforms. You probably do not need to adjust
  361. # this value.
  362. #
  363. # Common unit suffixes of k, m, or g are supported.
  364. # Documentation courtesy of the Gerrit project.
  365. #
  366. # SINCE 1.0.0
  367. # RESTART REQUIRED
  368. git.deltaBaseCacheLimit = 10m
  369. # Maximum number of pack files to have open at once. A pack file must be opened
  370. # in order for any of its data to be available in a cached window.
  371. #
  372. # If you increase this to a larger setting you may need to also adjust the ulimit
  373. # on file descriptors for the host JVM, as Gitblit needs additional file descriptors
  374. # available for network sockets and other repository data manipulation.
  375. #
  376. # Default on JGit is 128 file descriptors on all platforms.
  377. # Documentation courtesy of the Gerrit project.
  378. #
  379. # SINCE 1.0.0
  380. # RESTART REQUIRED
  381. git.packedGitOpenFiles = 128
  382. # Largest object size, in bytes, that JGit will allocate as a contiguous byte
  383. # array. Any file revision larger than this threshold will have to be streamed,
  384. # typically requiring the use of temporary files under $GIT_DIR/objects to implement
  385. # psuedo-random access during delta decompression.
  386. #
  387. # Servers with very high traffic should set this to be larger than the size of
  388. # their common big files. For example a server managing the Android platform
  389. # typically has to deal with ~10-12 MiB XML files, so 15 m would be a reasonable
  390. # setting in that environment. Setting this too high may cause the JVM to run out
  391. # of heap space when handling very big binary files, such as device firmware or
  392. # CD-ROM ISO images. Make sure to adjust your JVM heap accordingly.
  393. #
  394. # Default is 50 MiB on all platforms.
  395. #
  396. # Common unit suffixes of k, m, or g are supported.
  397. # Documentation courtesy of the Gerrit project.
  398. #
  399. #
  400. # NOTE: The importance of JGit's streamFileTreshold AND Git's bigFileThreshold
  401. # ISSUE: https://bugs.eclipse.org/bugs/show_bug.cgi?id=394078
  402. #
  403. # "core.bigFileThreshold
  404. #
  405. # Files larger than this size are stored deflated, without
  406. # attempting delta compression. Storing large files without
  407. # delta compression avoids excessive memory usage, at the
  408. # slight expense of increased disk usage.
  409. #
  410. # Default is 512 MiB on all platforms.
  411. # This should be reasonable for most projects as source code and other
  412. # text files can still be delta compressed,
  413. # but larger binary media files won't be."
  414. # -- Git documentation
  415. #
  416. # If streamFileTreshold < bigFileTreshold you _may_ spend alot of time waiting
  417. # for push and/or fetch to complete. It may even look hung.
  418. #
  419. # Until the issue is resolved gracefully, a workaround is to configure
  420. # bigFileThreshold < streamFileTreshold AND then repack the repository.
  421. #
  422. # e.g. from the repository folder with Gitblit NOT running:
  423. # git config core.bigFileTreshold 40m
  424. # git gc --aggressive
  425. #
  426. # SINCE 1.0.0
  427. # RESTART REQUIRED
  428. git.streamFileThreshold = 50m
  429. # When true, JGit will use mmap() rather than malloc()+read() to load data from
  430. # pack files. The use of mmap can be problematic on some JVMs as the garbage
  431. # collector must deduce that a memory mapped segment is no longer in use before
  432. # a call to munmap() can be made by the JVM native code.
  433. #
  434. # In server applications (such as Gitblit) that need to access many pack files,
  435. # setting this to true risks artificially running out of virtual address space,
  436. # as the garbage collector cannot reclaim unused mapped spaces fast enough.
  437. #
  438. # Default on JGit is false. Although potentially slower, it yields much more
  439. # predictable behavior.
  440. # Documentation courtesy of the Gerrit project.
  441. #
  442. # SINCE 1.0.0
  443. # RESTART REQUIRED
  444. git.packedGitMmap = false
  445. # Validate all received (pushed) objects are valid.
  446. #
  447. # SINCE 1.5.0
  448. git.checkReceivedObjects = true
  449. # Validate all referenced but not supplied objects are reachable.
  450. #
  451. # If enabled, Gitblit will verify that references to objects not contained
  452. # within the received pack are already reachable through at least one other
  453. # reference advertised to clients.
  454. #
  455. # This feature is useful when Gitblit doesn't trust the client to not provide a
  456. # forged SHA-1 reference to an object, in an attempt to access parts of the DAG
  457. # that they aren't allowed to see and which have been hidden from them via the
  458. # configured AdvertiseRefsHook or RefFilter.
  459. #
  460. # Enabling this feature may imply at least some, if not all, of the same functionality
  461. # performed by git.checkReceivedObjects.
  462. #
  463. # SINCE 1.5.0
  464. git.checkReferencedObjectsAreReachable = true
  465. # Set the maximum allowed Git object size.
  466. #
  467. # If an object is larger than the given size the pack-parsing will throw an exception
  468. # aborting the receive-pack operation. The default value, 0, disables maximum
  469. # object size checking.
  470. #
  471. # SINCE 1.5.0
  472. git.maxObjectSizeLimit = 0
  473. # Set the maximum allowed pack size.
  474. #
  475. # A pack exceeding this size will be rejected. The default value, -1, disables
  476. # maximum pack size checking.
  477. #
  478. # SINCE 1.5.0
  479. git.maxPackSizeLimit = -1
  480. # Use the Gitblit patch receive pack for processing contributions and tickets.
  481. # This allows the user to push a patch using the familiar Gerrit syntax:
  482. #
  483. # git push <remote> HEAD:refs/for/<targetBranch>
  484. #
  485. # NOTE:
  486. # This requires git.enableGitServlet = true AND it requires an authenticated
  487. # git transport connection (http/https) when pushing from a client.
  488. #
  489. # Valid services include:
  490. # com.gitblit.tickets.FileTicketService
  491. # com.gitblit.tickets.BranchTicketService
  492. # com.gitblit.tickets.RedisTicketService
  493. #
  494. # SINCE 1.4.0
  495. # RESTART REQUIRED
  496. tickets.service =
  497. # Globally enable or disable creation of new bug, enhancement, task, etc tickets
  498. # for all repositories.
  499. #
  500. # If false, no tickets can be created through the ui for any repositories.
  501. # If true, each repository can control if they allow new tickets to be created.
  502. #
  503. # NOTE:
  504. # If a repository is accepting patchsets, new proposal tickets can be created
  505. # regardless of this setting.
  506. #
  507. # SINCE 1.4.0
  508. tickets.acceptNewTickets = true
  509. # Globally enable or disable pushing patchsets to all repositories.
  510. #
  511. # If false, no patchsets will be accepted for any repositories.
  512. # If true, each repository can control if they accept new patchsets.
  513. #
  514. # NOTE:
  515. # If a repository is accepting patchsets, new proposal tickets can be created
  516. # regardless of the acceptNewTickets setting.
  517. #
  518. # SINCE 1.4.0
  519. tickets.acceptNewPatchsets = true
  520. # Default setting to control patchset merge through the web ui. If true, patchsets
  521. # must have an approval score to enable the merge button. This setting can be
  522. # overriden per-repository.
  523. #
  524. # SINCE 1.4.0
  525. tickets.requireApproval = false
  526. # The case-insensitive regular expression used to identify and close tickets on
  527. # push to the integration branch for commits that are NOT already referenced as
  528. # a patchset tip.
  529. #
  530. # SINCE 1.5.0
  531. tickets.closeOnPushCommitMessageRegex = (?:fixes|closes)[\\s-]+#?(\\d+)
  532. # Specify the location of the Lucene Ticket index
  533. #
  534. # SINCE 1.4.0
  535. # RESTART REQUIRED
  536. tickets.indexFolder = ${baseFolder}/tickets/lucene
  537. # Define the url for the Redis server.
  538. #
  539. # e.g. redis://localhost:6379
  540. # redis://:foobared@localhost:6379/2
  541. #
  542. # SINCE 1.4.0
  543. # RESTART REQUIRED
  544. tickets.redis.url =
  545. # The number of tickets to display on a page.
  546. #
  547. # SINCE 1.4.0
  548. tickets.perPage = 25
  549. # The folder where plugins are loaded from.
  550. #
  551. # SINCE 1.5.0
  552. # RESTART REQUIRED
  553. # BASEFOLDER
  554. plugins.folder = ${baseFolder}/plugins
  555. # The registry of available plugins.
  556. #
  557. # SINCE 1.5.0
  558. plugins.registry = http://plugins.gitblit.com/plugins.json
  559. #
  560. # Groovy Integration
  561. #
  562. # Location of Groovy scripts to use for Pre and Post receive hooks.
  563. # Use forward slashes even on Windows!!
  564. # e.g. c:/groovy
  565. #
  566. # RESTART REQUIRED
  567. # SINCE 0.8.0
  568. # BASEFOLDER
  569. groovy.scriptsFolder = ${baseFolder}/groovy
  570. # Specify the directory Grape uses for downloading libraries.
  571. # http://groovy.codehaus.org/Grape
  572. #
  573. # RESTART REQUIRED
  574. # SINCE 1.0.0
  575. # BASEFOLDER
  576. groovy.grapeFolder = ${baseFolder}/groovy/grape
  577. # Scripts to execute on Pre-Receive.
  578. #
  579. # These scripts execute after an incoming push has been parsed and validated
  580. # but BEFORE the changes are applied to the repository. You might reject a
  581. # push in this script based on the repository and branch the push is attempting
  582. # to change.
  583. #
  584. # Script names are case-sensitive on case-sensitive file systems. You may omit
  585. # the traditional ".groovy" from this list if your file extension is ".groovy"
  586. #
  587. # NOTE:
  588. # These scripts are only executed when pushing to *Gitblit*, not to other Git
  589. # tooling you may be using. Also note that these scripts are shared between
  590. # repositories. These are NOT repository-specific scripts! Within the script
  591. # you may customize the control-flow for a specific repository by checking the
  592. # *repository* variable.
  593. #
  594. # SPACE-DELIMITED
  595. # CASE-SENSITIVE
  596. # SINCE 0.8.0
  597. groovy.preReceiveScripts =
  598. # Scripts to execute on Post-Receive.
  599. #
  600. # These scripts execute AFTER an incoming push has been applied to a repository.
  601. # You might trigger a continuous-integration build here or send a notification.
  602. #
  603. # Script names are case-sensitive on case-sensitive file systems. You may omit
  604. # the traditional ".groovy" from this list if your file extension is ".groovy"
  605. #
  606. # NOTE:
  607. # These scripts are only executed when pushing to *Gitblit*, not to other Git
  608. # tooling you may be using. Also note that these scripts are shared between
  609. # repositories. These are NOT repository-specific scripts! Within the script
  610. # you may customize the control-flow for a specific repository by checking the
  611. # *repository* variable.
  612. #
  613. # SPACE-DELIMITED
  614. # CASE-SENSITIVE
  615. # SINCE 0.8.0
  616. groovy.postReceiveScripts =
  617. # Repository custom fields for Groovy Hook mechanism
  618. #
  619. # List of key=label pairs of custom fields to prompt for in the Edit Repository
  620. # page. These keys are stored in the repository's git config file in the
  621. # section [gitblit "customFields"]. Key names are alphanumeric only. These
  622. # fields are intended to be used for the Groovy hook mechanism where a script
  623. # can adjust it's execution based on the custom fields stored in the repository
  624. # config.
  625. #
  626. # e.g. "commitMsgRegex=Commit Message Regular Expression" anotherProperty=Another
  627. #
  628. # SPACE-DELIMITED
  629. # SINCE 1.0.0
  630. groovy.customFields =
  631. #
  632. # Fanout Settings
  633. #
  634. # Fanout is a PubSub notification service that can be used by Sparkleshare
  635. # to eliminate repository change polling. The fanout service runs in a separate
  636. # thread on a separate port from the Gitblit http/https application.
  637. # This service is provided so that Sparkleshare may be used with Gitblit in
  638. # firewalled environments or where reliance on Sparkleshare's default notifications
  639. # server (notifications.sparkleshare.org) is unwanted.
  640. #
  641. # This service maintains an open socket connection from the client to the
  642. # Fanout PubSub service. This service may not work properly behind a proxy server.
  643. # Specify the interface for Fanout to bind it's service.
  644. # You may specify an ip or an empty value to bind to all interfaces.
  645. # Specifying localhost will result in Gitblit ONLY listening to requests to
  646. # localhost.
  647. #
  648. # SINCE 1.2.1
  649. # RESTART REQUIRED
  650. fanout.bindInterface =
  651. # port for serving the Fanout PubSub service. <= 0 disables this service.
  652. # On Unix/Linux systems, ports < 1024 require root permissions.
  653. # Recommended value: 17000
  654. #
  655. # SINCE 1.2.1
  656. # RESTART REQUIRED
  657. fanout.port = 0
  658. # Use Fanout NIO service. If false, a multi-threaded socket service will be used.
  659. # Be advised, the socket implementation spawns a thread per connection plus the
  660. # connection acceptor thread. The NIO implementation is completely single-threaded.
  661. #
  662. # SINCE 1.2.1
  663. # RESTART REQUIRED
  664. fanout.useNio = true
  665. # Concurrent connection limit. <= 0 disables concurrent connection throttling.
  666. # If > 0, only the specified number of concurrent connections will be allowed
  667. # and all other connections will be rejected.
  668. #
  669. # SINCE 1.2.1
  670. # RESTART REQUIRED
  671. fanout.connectionLimit = 0
  672. #
  673. # Authentication Settings
  674. #
  675. # Require authentication to see everything but the admin pages
  676. #
  677. # SINCE 0.5.0
  678. # RESTART REQUIRED
  679. web.authenticateViewPages = false
  680. # If web.authenticateViewPages=true you may optionally require a client-side
  681. # basic authentication prompt instead of the standard form-based login.
  682. #
  683. # SINCE 1.3.0
  684. web.enforceHttpBasicAuthentication = false
  685. # Require admin authentication for the admin functions and pages
  686. #
  687. # SINCE 0.5.0
  688. # RESTART REQUIRED
  689. web.authenticateAdminPages = true
  690. # Allow Gitblit to store a cookie in the user's browser for automatic
  691. # authentication. The cookie is generated by the user service.
  692. #
  693. # SINCE 0.5.0
  694. web.allowCookieAuthentication = true
  695. # Allow deletion of non-empty repositories. This is enforced for all delete vectors.
  696. #
  697. # SINCE 1.6.0
  698. web.allowDeletingNonEmptyRepositories = true
  699. # Config file for storing project metadata
  700. #
  701. # SINCE 1.2.0
  702. # BASEFOLDER
  703. web.projectsFile = ${baseFolder}/projects.conf
  704. # Either the full path to a user config file (users.conf)
  705. # OR a fully qualified class name that implements the IUserService interface.
  706. #
  707. # Any custom user service implementation must have a public default constructor.
  708. #
  709. # SINCE 0.5.0
  710. # RESTART REQUIRED
  711. # BASEFOLDER
  712. realm.userService = ${baseFolder}/users.conf
  713. # Ordered list of external authentication providers which will be used if
  714. # authentication against the local user service fails.
  715. #
  716. # Valid providers are:
  717. #
  718. # htpasswd
  719. # ldap
  720. # pam
  721. # redmine
  722. # salesforce
  723. # windows
  724. # e.g. realm.authenticationProviders = htpasswd windows
  725. #
  726. # SINCE 1.4.0
  727. # RESTART REQUIRED
  728. # SPACE-DELIMITED
  729. realm.authenticationProviders =
  730. # How to store passwords.
  731. # Valid values are plain, md5, or combined-md5. md5 is the hash of password.
  732. # combined-md5 is the hash of username.toLowerCase()+password.
  733. # Default is md5.
  734. #
  735. # SINCE 0.5.0
  736. realm.passwordStorage = md5
  737. # Minimum valid length for a plain text password.
  738. # Default value is 5. Absolute minimum is 4.
  739. #
  740. # SINCE 0.5.0
  741. realm.minPasswordLength = 5
  742. #
  743. # Gitblit Web Settings
  744. #
  745. # If blank Gitblit is displayed.
  746. #
  747. # SINCE 0.5.0
  748. web.siteName =
  749. # The canonical url of your Gitblit server to bs used in email notifications.
  750. # e.g. web.canonicalUrl = https://demo-gitblit.rhcloud.com
  751. #
  752. # SINCE 1.4.0
  753. web.canonicalUrl =
  754. # You may specify a different logo image for the header but it must be 120x45px.
  755. # If the specified file does not exist, the default Gitblit logo will be used.
  756. #
  757. # SINCE 1.3.0
  758. # BASEFOLDER
  759. web.headerLogo = ${baseFolder}/logo.png
  760. # You may specify a different link URL for the logo image anchor.
  761. # If blank the Gitblit main page URL is used.
  762. #
  763. # SINCE 1.3.0
  764. # BASEFOLDER
  765. web.rootLink =
  766. # You may specify a custom header background CSS color. If unspecified, the
  767. # default color will be used.
  768. #
  769. # e.g. web.headerBackgroundColor = #002060
  770. #
  771. # SINCE 1.3.0
  772. web.headerBackgroundColor =
  773. # You may specify a custom header foreground CSS color. If unspecified, the
  774. # default color will be used.
  775. #
  776. # e.g. web.headerForegroundColor = white
  777. #
  778. # SINCE 1.3.0
  779. web.headerForegroundColor =
  780. # You may specify a custom header foreground hover CSS color. If unspecified, the
  781. # default color will be used.
  782. #
  783. # e.g. web.headerHoverColor = white
  784. #
  785. # SINCE 1.3.0
  786. web.headerHoverColor =
  787. # You may specify a custom header border CSS color. If unspecified, the default
  788. # color will be used.
  789. #
  790. # e.g. web.headerBorderColor = #002060
  791. #
  792. # SINCE 1.3.0
  793. web.headerBorderColor =
  794. # You may specify a custom header border CSS color. If unspecified, the default
  795. # color will be used.
  796. #
  797. # e.g. web.headerBorderFocusColor = #ff9900
  798. #
  799. # SINCE 1.3.0
  800. web.headerBorderFocusColor =
  801. # If *web.authenticateAdminPages*=true, users with "admin" role can create
  802. # repositories, create users, and edit repository metadata.
  803. #
  804. # If *web.authenticateAdminPages*=false, any user can execute the aforementioned
  805. # functions.
  806. #
  807. # SINCE 0.5.0
  808. web.allowAdministration = true
  809. # Setting to disable rendering the top-level navigation header which includes
  810. # the login form, top-level links like dashboard, repositories, search, etc.
  811. # This setting is only useful if you plan to embed Gitblit within another page
  812. # or system.
  813. #
  814. # SINCE 1.4.0
  815. web.hideHeader = false
  816. # Allows rpc clients to list repositories and possibly manage or administer the
  817. # Gitblit server, if the authenticated account has administrator permissions.
  818. # See *web.enableRpcManagement* and *web.enableRpcAdministration*.
  819. #
  820. # SINCE 0.7.0
  821. web.enableRpcServlet = true
  822. # Allows rpc clients to manage repositories and users of the Gitblit instance,
  823. # if the authenticated account has administrator permissions.
  824. # Requires *web.enableRpcServlet=true*.
  825. #
  826. # SINCE 0.7.0
  827. web.enableRpcManagement = false
  828. # Allows rpc clients to control the server settings and monitor the health of this
  829. # this Gitblit instance, if the authenticated account has administrator permissions.
  830. # Requires *web.enableRpcServlet=true* and *web.enableRpcManagement*.
  831. #
  832. # SINCE 0.7.0
  833. web.enableRpcAdministration = false
  834. # Full path to a configurable robots.txt file. With this file you can control
  835. # what parts of your Gitblit server respectable robots are allowed to traverse.
  836. # http://googlewebmastercentral.blogspot.com/2008/06/improving-on-robots-exclusion-protocol.html
  837. #
  838. # SINCE 1.0.0
  839. # BASEFOLDER
  840. web.robots.txt = ${baseFolder}/robots.txt
  841. # The number of minutes to cache a page in the browser since the last request.
  842. # The default value is 0 minutes. A value <= 0 disables all page caching which
  843. # is the default behavior for Gitblit <= 1.3.0.
  844. #
  845. # SINCE 1.3.1
  846. web.pageCacheExpires = 0
  847. # If true, the web ui layout will respond and adapt to the browser's dimensions.
  848. # if false, the web ui will use a 940px fixed-width layout.
  849. # http://twitter.github.com/bootstrap/scaffolding.html#responsive
  850. #
  851. # SINCE 1.0.0
  852. web.useResponsiveLayout = true
  853. # Allow Gravatar images to be displayed in Gitblit pages.
  854. #
  855. # SINCE 0.8.0
  856. web.allowGravatar = true
  857. # Allow dynamic zip downloads.
  858. #
  859. # SINCE 0.5.0
  860. web.allowZipDownloads = true
  861. # If *web.allowZipDownloads=true* the following formats will be displayed for
  862. # download compressed archive links:
  863. #
  864. # zip = standard .zip
  865. # tar = standard tar format (preserves *nix permissions and symlinks)
  866. # gz = gz-compressed tar
  867. # xz = xz-compressed tar
  868. # bzip2 = bzip2-compressed tar
  869. #
  870. # SPACE-DELIMITED
  871. # SINCE 1.2.0
  872. web.compressedDownloads = zip gz
  873. # Allow optional Lucene integration. Lucene indexing is an opt-in feature.
  874. # A repository may specify branches to index with Lucene instead of using Git
  875. # commit traversal. There are scenarios where you may want to completely disable
  876. # Lucene indexing despite a repository specifying indexed branches. One such
  877. # scenario is on a resource-constrained federated Gitblit mirror.
  878. #
  879. # SINCE 0.9.0
  880. web.allowLuceneIndexing = true
  881. # Allows an authenticated user to create forks of a repository
  882. #
  883. # set this to false if you want to disable all fork controls on the web site
  884. #
  885. web.allowForking = true
  886. # Controls the length of shortened commit hash ids
  887. #
  888. # SINCE 1.2.0
  889. web.shortCommitIdLength = 6
  890. # Use Clippy (Flash solution) to provide a copy-to-clipboard button.
  891. # If false, a button with a more primitive JavaScript-based prompt box will
  892. # offer a 3-step (click, ctrl+c, enter) copy-to-clipboard alternative.
  893. #
  894. # SINCE 0.8.0
  895. web.allowFlashCopyToClipboard = true
  896. # Default maximum number of commits that a repository may contribute to the
  897. # activity page, regardless of the selected duration. This setting may be valuable
  898. # for an extremely busy server. This value may also be configed per-repository
  899. # in Edit Repository. 0 disables this throttle.
  900. #
  901. # SINCE 1.2.0
  902. web.maxActivityCommits = 0
  903. # Default number of entries to include in RSS Syndication links
  904. #
  905. # SINCE 0.5.0
  906. web.syndicationEntries = 25
  907. # Show the size of each repository on the repositories page.
  908. # This requires recursive traversal of each repository folder. This may be
  909. # non-performant on some operating systems and/or filesystems.
  910. #
  911. # SINCE 0.5.2
  912. web.showRepositorySizes = true
  913. # List of custom regex expressions that can be displayed in the Filters menu
  914. # of the Repositories and Activity pages. Keep them very simple because you
  915. # are likely to run into encoding issues if they are too complex.
  916. #
  917. # Use !!! to separate the filters
  918. #
  919. # SINCE 0.8.0
  920. web.customFilters =
  921. # Show federation registrations (without token) and the current pull status
  922. # to non-administrator users.
  923. #
  924. # SINCE 0.6.0
  925. web.showFederationRegistrations = false
  926. # This is the message displayed when *web.authenticateViewPages=true*.
  927. # This can point to a file with Markdown content.
  928. # Specifying "gitblit" uses the internal login message.
  929. #
  930. # SINCE 0.7.0
  931. # BASEFOLDER
  932. web.loginMessage = gitblit
  933. # This is the message displayed above the repositories table.
  934. # This can point to a file with Markdown content.
  935. # Specifying "gitblit" uses the internal welcome message.
  936. #
  937. # SINCE 0.5.0
  938. # BASEFOLDER
  939. web.repositoriesMessage = gitblit
  940. # Ordered list of charsets/encodings to use when trying to display a blob.
  941. # If empty, UTF-8 and ISO-8859-1 are used. The server's default charset
  942. # is always appended to the encoding list. If all encodings fail to cleanly
  943. # decode the blob content, UTF-8 will be used with the standard malformed
  944. # input/unmappable character replacement strings.
  945. #
  946. # SPACE-DELIMITED
  947. # SINCE 1.0.0
  948. web.blobEncodings = UTF-8 ISO-8859-1
  949. # Manually set the default timezone to be used by Gitblit for display in the
  950. # web ui. This value is independent of the JVM timezone. Specifying a blank
  951. # value will default to the JVM timezone.
  952. # e.g. America/New_York, US/Pacific, UTC, Europe/Berlin
  953. #
  954. # SINCE 0.9.0
  955. # RESTART REQUIRED
  956. web.timezone =
  957. # Use the client timezone when formatting dates.
  958. # This uses AJAX to determine the browser's timezone and may require more
  959. # server overhead because a Wicket session is created. All Gitblit pages
  960. # attempt to be stateless, if possible.
  961. #
  962. # SINCE 0.5.0
  963. # RESTART REQUIRED
  964. web.useClientTimezone = false
  965. # Time format
  966. # <http://download.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html>
  967. #
  968. # SINCE 0.8.0
  969. web.timeFormat = HH:mm
  970. # Short date format
  971. # <http://download.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html>
  972. #
  973. # SINCE 0.5.0
  974. web.datestampShortFormat = yyyy-MM-dd
  975. # Long date format
  976. #
  977. # SINCE 0.8.0
  978. web.datestampLongFormat = EEEE, MMMM d, yyyy
  979. # Long timestamp format
  980. # <http://download.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html>
  981. #
  982. # SINCE 0.5.0
  983. web.datetimestampLongFormat = EEEE, MMMM d, yyyy HH:mm Z
  984. # Mount URL parameters
  985. # This setting controls if pretty or parameter URLs are used.
  986. # i.e.
  987. # if true:
  988. # http://localhost/commit/myrepo/abcdef
  989. # if false:
  990. # http://localhost/commit/?r=myrepo&h=abcdef
  991. #
  992. # SINCE 0.5.0
  993. # RESTART REQUIRED
  994. web.mountParameters = true
  995. # Some servlet containers (e.g. Tomcat >= 6.0.10) disallow '/' (%2F) encoding
  996. # in URLs as a security precaution for proxies. This setting tells Gitblit
  997. # to preemptively replace '/' with '*' or '!' for url string parameters.
  998. #
  999. # <https://issues.apache.org/jira/browse/WICKET-1303>
  1000. # <http://tomcat.apache.org/security-6.html#Fixed_in_Apache_Tomcat_6.0.10>
  1001. # Add *-Dorg.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH=true* to your
  1002. # *CATALINA_OPTS* or to your JVM launch parameters
  1003. #
  1004. # SINCE 0.5.2
  1005. web.forwardSlashCharacter = /
  1006. # Show other URLs on the summary page for accessing your git repositories
  1007. # Use spaces to separate urls.
  1008. #
  1009. # {0} is the token for the repository name
  1010. # {1} is the token for the username
  1011. #
  1012. # The username is only practical if you have setup your other git serving
  1013. # solutions accounts to have the same username as the Gitblit account.
  1014. #
  1015. # e.g.
  1016. # web.otherUrls = ssh://localhost/git/{0} git://localhost/git/{0} https://{1}@localhost/r/{0}
  1017. #
  1018. # SPACE-DELIMITED
  1019. # SINCE 0.5.0
  1020. web.otherUrls =
  1021. # Should app-specific clone links be displayed for SourceTree, SparkleShare, etc?
  1022. #
  1023. # SINCE 1.3.0
  1024. web.allowAppCloneLinks = true
  1025. # Choose how to present the repositories list.
  1026. # grouped = group nested/subfolder repositories together (no sorting)
  1027. # flat = flat list of repositories (sorting allowed)
  1028. #
  1029. # SINCE 0.5.0
  1030. web.repositoryListType = grouped
  1031. # If using a grouped repository list and there are repositories at the
  1032. # root level of your repositories folder, you may specify the displayed
  1033. # group name with this setting. This value is only used for web presentation.
  1034. #
  1035. # SINCE 0.5.0
  1036. web.repositoryRootGroupName = main
  1037. # Display the repository swatch color next to the repository name link in the
  1038. # repositories list.
  1039. #
  1040. # SINCE 0.8.0
  1041. web.repositoryListSwatches = true
  1042. # Defines the default commit message renderer. This can be configured
  1043. # per-repository.
  1044. #
  1045. # Valid values are: plain, markdown
  1046. #
  1047. # SINCE 1.4.0
  1048. web.commitMessageRenderer = plain
  1049. # Control if email addresses are shown in web ui
  1050. #
  1051. # SINCE 0.5.0
  1052. web.showEmailAddresses = true
  1053. # Shows a combobox in the page links header with commit, committer, and author
  1054. # search selection. Default search is commit.
  1055. #
  1056. # SINCE 0.5.0
  1057. web.showSearchTypeSelection = false
  1058. # Controls display of activity graphs on the dashboard, activity, and summary
  1059. # pages. Charting makes use of the external Google Charts API.
  1060. #
  1061. # SINCE 0.5.0
  1062. web.generateActivityGraph = true
  1063. # Displays the commits branch graph in the summary page and commits/log page.
  1064. #
  1065. # SINCE 1.4.0
  1066. web.showBranchGraph = true
  1067. # The default number of days to show on the activity page.
  1068. # Value must exceed 0 else default of 7 is used
  1069. #
  1070. # SINCE 0.8.0
  1071. web.activityDuration = 7
  1072. # Choices for days of activity to display.
  1073. #
  1074. # SPACE-DELIMITED
  1075. # SINCE 1.3.0
  1076. web.activityDurationChoices = 1 3 7 14 21 28
  1077. # Maximum number of days of activity that may be displayed on the activity page.
  1078. #
  1079. # SINCE 1.3.2
  1080. web.activityDurationMaximum = 30
  1081. # The number of days of commits to cache in memory for the dashboard, activity,
  1082. # and project pages. A value of 0 will disable all caching and will parse commits
  1083. # in each repository per-request. If the value > 0 these pages will try to fulfill
  1084. # requests using the commit cache. If the request specifies a period which falls
  1085. # outside the commit cache window, then the cache will be ignored and the request
  1086. # will be fulfilled by brute-force parsing all relevant commits per-repository.
  1087. #
  1088. # Consider the values specified for *web.activityDurationChoices* when setting
  1089. # the cache size AND consider adjusting the JVM -Xmx heap parameter appropriately.
  1090. #
  1091. # SINCE 1.3.0
  1092. # RESTART REQUIRED
  1093. web.activityCacheDays = 14
  1094. # Case-insensitive list of authors to exclude from metrics. Useful for
  1095. # eliminating bots.
  1096. #
  1097. # SPACE-DELIMITED
  1098. # SINCE 1.3.0
  1099. web.metricAuthorExclusions =
  1100. # The number of commits to display on the summary page
  1101. # Value must exceed 0 else default of 20 is used
  1102. #
  1103. # SINCE 0.5.0
  1104. web.summaryCommitCount = 16
  1105. # The number of tags/branches to display on the summary page.
  1106. # -1 = all tags/branches
  1107. # 0 = hide tags/branches
  1108. # N = N tags/branches
  1109. #
  1110. # SINCE 0.5.0
  1111. web.summaryRefsCount = 5
  1112. # Show a README file, if available, on the summary page.
  1113. #
  1114. # SINCE 1.4.0
  1115. web.summaryShowReadme = false
  1116. # The number of items to show on a page before showing the first, prev, next
  1117. # pagination links. A default of 50 is used for any invalid value.
  1118. #
  1119. # SINCE 0.5.0
  1120. web.itemsPerPage = 50
  1121. # The number of reflog changes to display on the overview page
  1122. # Value must exceed 0 else default of 5 is used
  1123. #
  1124. # SINCE 1.3.0
  1125. web.overviewReflogCount = 5
  1126. # The number of reflog changes to show on a reflog page before show the first,
  1127. # prev, next pagination links. A default of 10 is used for any invalid value.
  1128. #
  1129. # SINCE 1.3.0
  1130. web.reflogChangesPerPage = 10
  1131. # Specify the names of documents in the root of your repository to be displayed
  1132. # in tabs on your repository docs page. If the name is not found in the root
  1133. # then no tab is added. The order specified is the order displayed. Do not
  1134. # specify a file extension as the aggregation of markup extensions + txt are used
  1135. # in the search algorithm.
  1136. #
  1137. # SPACE-DELIMITED
  1138. # SINCE 1.4.0
  1139. web.documents = readme home index changelog contributing submitting_patches copying license notice authors
  1140. # Registered file extensions to ignore during Lucene indexing
  1141. #
  1142. # SPACE-DELIMITED
  1143. # SINCE 0.9.0
  1144. web.luceneIgnoreExtensions = 7z arc arj bin bmp dll doc docx exe gif gz jar jpg lib lzh odg odf odt pdf ppt pptx png so swf tar xcf xls xlsx zip
  1145. # Registered extensions for google-code-prettify
  1146. #
  1147. # SPACE-DELIMITED
  1148. # SINCE 0.5.0
  1149. web.prettyPrintExtensions = aea agc basic c cbm cl clj cpp cs css dart el erl erlang frm fs go groovy hs htm html java js latex lisp ll llvm lsp lua ml moxie mumps n nemerle pascal php pl prefs properties proto py r R rb rd Rd rkt s S scala scm sh Splus sql ss tcl tex vb vbs vhd vhdl wiki xml xq xquery yaml yml ymlapollo
  1150. # Registered extensions for markdown transformation
  1151. #
  1152. # SPACE-DELIMITED
  1153. # CASE-SENSITIVE
  1154. # SINCE 0.5.0
  1155. web.markdownExtensions = md mkd markdown MD MKD
  1156. # Registered extensions for mediawiki transformation
  1157. #
  1158. # SPACE-DELIMITED
  1159. # CASE-SENSITIVE
  1160. # SINCE 1.4.0
  1161. web.mediawikiExtensions = mw mediawiki
  1162. # Registered extensions for twiki transformation
  1163. #
  1164. # SPACE-DELIMITED
  1165. # CASE-SENSITIVE
  1166. # SINCE 1.4.0
  1167. web.twikiExtensions = twiki
  1168. # Registered extensions for textile transformation
  1169. #
  1170. # SPACE-DELIMITED
  1171. # CASE-SENSITIVE
  1172. # SINCE 1.4.0
  1173. web.textileExtensions = textile
  1174. # Registered extensions for confluence transformation
  1175. #
  1176. # SPACE-DELIMITED
  1177. # CASE-SENSITIVE
  1178. # SINCE 1.4.0
  1179. web.confluenceExtensions = confluence
  1180. # Registered extensions for tracwiki transformation
  1181. #
  1182. # SPACE-DELIMITED
  1183. # CASE-SENSITIVE
  1184. # SINCE 1.4.0
  1185. web.tracwikiExtensions = tracwiki
  1186. # Registered extensions for asciidoc transformation
  1187. #
  1188. # SPACE-DELIMITED
  1189. # CASE-SENSITIVE
  1190. # SINCE 1.4.0
  1191. web.asciidocExtensions = ad adoc asciidoc
  1192. # Image extensions
  1193. #
  1194. # SPACE-DELIMITED
  1195. # SINCE 0.5.0
  1196. web.imageExtensions = bmp jpg gif png
  1197. # Registered extensions for binary blobs
  1198. #
  1199. # SPACE-DELIMITED
  1200. # SINCE 0.5.0
  1201. web.binaryExtensions = 7z arc arj bin dll doc docx exe gz jar lib lzh odg odf odt pdf ppt pptx so tar xls xlsx zip
  1202. # Aggressive heap management will run the garbage collector on every generated
  1203. # page. This slows down page generation a little but improves heap consumption.
  1204. #
  1205. # SINCE 0.5.0
  1206. web.aggressiveHeapManagement = false
  1207. # Run the webapp in debug mode
  1208. #
  1209. # SINCE 0.5.0
  1210. # RESTART REQUIRED
  1211. web.debugMode = false
  1212. # Force a default locale for all users, ignoring the browser's settings.
  1213. # An empty value allows Gitblit to use the translation preferred by the browser.
  1214. #
  1215. # Changing this value while the server is running will only affect new sessions.
  1216. #
  1217. # e.g. web.forceDefaultLocale = en
  1218. #
  1219. # SINCE 1.3.0
  1220. web.forceDefaultLocale =
  1221. # Enable/disable global regex substitutions (i.e. shared across repositories)
  1222. #
  1223. # SINCE 0.5.0
  1224. # DEPRECATED 1.4.0 (migrate to bugtraq instead)
  1225. regex.global = true
  1226. # Example global regex substitutions
  1227. # Use !!! to separate the search pattern and the replace pattern
  1228. # searchpattern!!!replacepattern
  1229. # SINCE 0.5.0
  1230. # regex.global.bug = \\b(Bug:)(\\s*[#]?|-){0,1}(\\d+)\\b!!!Bug: <a href="http://somehost/bug/$3">$3</a>
  1231. # SINCE 0.5.0
  1232. # Example Gerrit links
  1233. # regex.global.changeid = \\b(Change-Id:\\s*)([A-Za-z0-9]*)\\b!!!Change-Id: <a href="http://somehost/r/#q,$2,n,z">$2</a>
  1234. # regex.global.reviewedon = \\b(Reviewed-on:\\s*)([A-Za-z0-9:/\\.]*)\\b!!!Reviewed-on: <a href="$2">$2</a>
  1235. # Example per-repository regex substitutions overrides global
  1236. # SINCE 0.5.0
  1237. # regex.myrepository.bug = \\b(Bug:)(\\s*[#]?|-){0,1}(\\d+)\\b!!!Bug: <a href="http://elsewhere/bug/$3">$3</a>
  1238. #
  1239. # Mail Settings
  1240. # SINCE 0.6.0
  1241. #
  1242. # Mail settings are used to notify administrators of received federation proposals
  1243. #
  1244. # ip or hostname of smtp server
  1245. #
  1246. # SINCE 0.6.0
  1247. mail.server =
  1248. # port to use for smtp requests
  1249. #
  1250. # SINCE 0.6.0
  1251. mail.port = 25
  1252. # debug the mail executor
  1253. #
  1254. # SINCE 0.6.0
  1255. mail.debug = false
  1256. # use SMTPs flag
  1257. mail.smtps = false
  1258. # use STARTTLS flag
  1259. #
  1260. # SINCE 1.6.0
  1261. mail.starttls = false
  1262. # if your smtp server requires authentication, supply the credentials here
  1263. #
  1264. # SINCE 0.6.0
  1265. mail.username =
  1266. # SINCE 0.6.0
  1267. mail.password =
  1268. # from address for generated emails
  1269. #
  1270. # SINCE 0.6.0
  1271. mail.fromAddress =
  1272. # List of email addresses for the Gitblit administrators
  1273. #
  1274. # SPACE-DELIMITED
  1275. # SINCE 0.6.0
  1276. mail.adminAddresses =
  1277. # List of email addresses for sending push email notifications.
  1278. #
  1279. # This key currently requires use of the sendemail.groovy hook script.
  1280. # If you set sendemail.groovy in *groovy.postReceiveScripts* then email
  1281. # notifications for all repositories (regardless of access restrictions!)
  1282. # will be sent to these addresses.
  1283. #
  1284. # SPACE-DELIMITED
  1285. # SINCE 0.8.0
  1286. mail.mailingLists =
  1287. #
  1288. # Federation Settings
  1289. # SINCE 0.6.0
  1290. #
  1291. # A Gitblit federation is a way to backup one Gitblit instance to another.
  1292. #
  1293. # *git.enableGitServlet* must be true to use this feature.
  1294. # Your federation name is used for federation status acknowledgments. If it is
  1295. # unset, and you elect to send a status acknowledgment, your Gitblit instance
  1296. # will be identified by its hostname, if available, else your internal ip address.
  1297. # The source Gitblit instance will also append your external IP address to your
  1298. # identification to differentiate multiple pulling systems behind a single proxy.
  1299. #
  1300. # SINCE 0.6.0
  1301. federation.name =
  1302. # Specify the passphrase of this Gitblit instance.
  1303. #
  1304. # An unspecified (empty) passphrase disables processing federation requests.
  1305. #
  1306. # This value can be anything you want: an integer, a sentence, an haiku, etc.
  1307. # Keep the value simple, though, to avoid Java properties file encoding issues.
  1308. #
  1309. # Changing your passphrase will break any registrations you have established with other
  1310. # Gitblit instances.
  1311. #
  1312. # CASE-SENSITIVE
  1313. # SINCE 0.6.0
  1314. # RESTART REQUIRED *(only to enable or disable federation)*
  1315. federation.passphrase =
  1316. # Control whether or not this Gitblit instance can receive federation proposals
  1317. # from another Gitblit instance. Registering a federated Gitblit is a manual
  1318. # process. Proposals help to simplify that process by allowing a remote Gitblit
  1319. # instance to send your Gitblit instance the federation pull data.
  1320. #
  1321. # SINCE 0.6.0
  1322. federation.allowProposals = false
  1323. # The destination folder for cached federation proposals.
  1324. # Use forward slashes even on Windows!!
  1325. #
  1326. # SINCE 0.6.0
  1327. # BASEFOLDER
  1328. federation.proposalsFolder = ${baseFolder}/proposals
  1329. # The default pull frequency if frequency is unspecified on a registration
  1330. #
  1331. # SINCE 0.6.0
  1332. federation.defaultFrequency = 60 mins
  1333. # Federation Sets are named groups of repositories. The Federation Sets are
  1334. # available for selection in the repository settings page. You can assign a
  1335. # repository to one or more sets and then distribute the token for the set.
  1336. # This allows you to grant federation pull access to a subset of your available
  1337. # repositories. Tokens for federation sets only grant repository pull access.
  1338. #
  1339. # SPACE-DELIMITED
  1340. # CASE-SENSITIVE
  1341. # SINCE 0.6.0
  1342. federation.sets =
  1343. # Federation pull registrations
  1344. # Registrations are read once, at startup.
  1345. #
  1346. # RESTART REQUIRED
  1347. #
  1348. # frequency:
  1349. # The shortest frequency allowed is every 5 minutes
  1350. # Decimal frequency values are cast to integers
  1351. # Frequency values may be specified in mins, hours, or days
  1352. # Values that can not be parsed or are unspecified default to *federation.defaultFrequency*
  1353. #
  1354. # folder:
  1355. # if unspecified, the folder is *git.repositoriesFolder*
  1356. # if specified, the folder is relative to *git.repositoriesFolder*
  1357. #
  1358. # bare:
  1359. # if true, each repository will be created as a *bare* repository and will not
  1360. # have a working directory.
  1361. #
  1362. # if false, each repository will be created as a normal repository suitable
  1363. # for local work.
  1364. #
  1365. # mirror:
  1366. # if true, each repository HEAD is reset to *origin/master* after each pull.
  1367. # The repository will be flagged *isFrozen* after the initial clone.
  1368. #
  1369. # if false, each repository HEAD will point to the FETCH_HEAD of the initial
  1370. # clone from the origin until pushed to or otherwise manipulated.
  1371. #
  1372. # mergeAccounts:
  1373. # if true, remote accounts and their permissions are merged into your
  1374. # users.properties file
  1375. #
  1376. # notifyOnError:
  1377. # if true and the mail configuration is properly set, administrators will be
  1378. # notified by email of pull failures
  1379. #
  1380. # include and exclude:
  1381. # Space-delimited list of repositories to include or exclude from pull
  1382. # may be * wildcard to include or exclude all
  1383. # may use fuzzy match (e.g. org.eclipse.*)
  1384. #
  1385. # (Nearly) Perfect Mirror example
  1386. #
  1387. #federation.example1.url = https://go.gitblit.com
  1388. #federation.example1.token = 6f3b8a24bf970f17289b234284c94f43eb42f0e4
  1389. #federation.example1.frequency = 120 mins
  1390. #federation.example1.folder =
  1391. #federation.example1.bare = true
  1392. #federation.example1.mirror = true
  1393. #federation.example1.mergeAccounts = true
  1394. #
  1395. # Advanced Realm Settings
  1396. #
  1397. # Auto-creates user accounts based on the servlet container principal. This
  1398. # assumes that your Gitblit install is a protected resource and your container's
  1399. # authentication process intercepts all Gitblit requests.
  1400. #
  1401. # SINCE 1.3.0
  1402. realm.container.autoCreateAccounts = false
  1403. # Allow or prohibit Windows guest account logins
  1404. #
  1405. # SINCE 1.3.0
  1406. realm.windows.allowGuests = false
  1407. # Allow user accounts belonging to the BUILTIN\Administrators group to be
  1408. # Gitblit administrators.
  1409. #
  1410. # SINCE 1.4.0
  1411. realm.windows.permitBuiltInAdministrators = true
  1412. # The default domain for authentication.
  1413. #
  1414. # If specified, this domain will be used for authentication UNLESS the supplied
  1415. # login name manually specifies a domain (.e.g. mydomain\james or james@mydomain)
  1416. #
  1417. # If unspecified, the username must be specified in UPN format (name@domain).
  1418. #
  1419. # if "." (dot) is specified, ONLY the local account database will be used.
  1420. #
  1421. # SINCE 1.3.0
  1422. realm.windows.defaultDomain =
  1423. # The PAM service name for authentication.
  1424. # default: system-auth
  1425. #
  1426. # SINCE 1.3.1
  1427. realm.pam.serviceName = system-auth
  1428. # The Apache htpasswd file that contains the users and passwords.
  1429. # default: ${baseFolder}/htpasswd
  1430. #
  1431. # RESTART REQUIRED
  1432. # BASEFOLDER
  1433. # SINCE 1.3.2
  1434. realm.htpasswd.userfile = ${baseFolder}/htpasswd
  1435. # Restrict the Salesforce user to members of this org.
  1436. # default: 0 (i.e. do not check the Org ID)
  1437. #
  1438. # SINCE 1.3.0
  1439. realm.salesforce.orgId = 0
  1440. # URL of the LDAP server.
  1441. # To use encrypted transport, use either ldaps:// URL for SSL or ldap+tls:// to
  1442. # send StartTLS command.
  1443. #
  1444. # SINCE 1.0.0
  1445. realm.ldap.server = ldap://localhost
  1446. # Login username for LDAP searches.
  1447. # If this value is unspecified, anonymous LDAP login will be used.
  1448. #
  1449. # e.g. mydomain\\username
  1450. #
  1451. # SINCE 1.0.0
  1452. realm.ldap.username = cn=Directory Manager
  1453. # Login password for LDAP searches.
  1454. #
  1455. # SINCE 1.0.0
  1456. realm.ldap.password = password
  1457. # Bind pattern for Authentication.
  1458. # Allow to directly authenticate an user without LDAP Searches.
  1459. #
  1460. # e.g. CN=${username},OU=Users,OU=UserControl,OU=MyOrganization,DC=MyDomain
  1461. #
  1462. # SINCE 1.5.0
  1463. realm.ldap.bindpattern =
  1464. # Delegate team membership control to LDAP.
  1465. #
  1466. # If true, team user memberships will be specified by LDAP groups. This will
  1467. # disable team selection in Edit User and user selection in Edit Team.
  1468. #
  1469. # If false, LDAP will only be used for authentication and Gitblit will maintain
  1470. # team memberships with the *realm.ldap.backingUserService*.
  1471. #
  1472. # SINCE 1.0.0
  1473. realm.ldap.maintainTeams = false
  1474. # Root node for all LDAP users
  1475. #
  1476. # This is the root node from which subtree user searches will begin.
  1477. # If blank, Gitblit will search ALL nodes.
  1478. #
  1479. # SINCE 1.0.0
  1480. realm.ldap.accountBase = OU=Users,OU=UserControl,OU=MyOrganization,DC=MyDomain
  1481. # Filter criteria for LDAP users
  1482. #
  1483. # Query pattern to use when searching for a user account. This may be any valid
  1484. # LDAP query expression, including the standard (&) and (|) operators.
  1485. #
  1486. # Variables may be injected via the ${variableName} syntax.
  1487. # Recognized variables are:
  1488. # ${username} - The text entered as the user name
  1489. #
  1490. # SINCE 1.0.0
  1491. realm.ldap.accountPattern = (&(objectClass=person)(sAMAccountName=${username}))
  1492. # Root node for all LDAP groups to be used as Gitblit Teams
  1493. #
  1494. # This is the root node from which subtree team searches will begin.
  1495. # If blank, Gitblit will search ALL nodes.
  1496. #
  1497. # SINCE 1.0.0
  1498. realm.ldap.groupBase = OU=Groups,OU=UserControl,OU=MyOrganization,DC=MyDomain
  1499. # Filter criteria for LDAP groups
  1500. #
  1501. # Query pattern to use when searching for a team. This may be any valid
  1502. # LDAP query expression, including the standard (&) and (|) operators.
  1503. #
  1504. # Variables may be injected via the ${variableName} syntax.
  1505. # Recognized variables are:
  1506. # ${username} - The text entered as the user name
  1507. # ${dn} - The Distinguished Name of the user logged in
  1508. #
  1509. # All attributes from the LDAP User record are available. For example, if a user
  1510. # has an attribute "fullName" set to "John", "(fn=${fullName})" will be
  1511. # translated to "(fn=John)".
  1512. #
  1513. # SINCE 1.0.0
  1514. realm.ldap.groupMemberPattern = (&(objectClass=group)(member=${dn}))
  1515. # Filter criteria for empty LDAP groups
  1516. #
  1517. # Query pattern to use when searching for an empty team. This may be any valid
  1518. # LDAP query expression, including the standard (&) and (|) operators.
  1519. #
  1520. # default: (&(objectClass=group)(!(member=*)))
  1521. # SINCE 1.4.0
  1522. realm.ldap.groupEmptyMemberPattern = (&(objectClass=group)(!(member=*)))
  1523. # LDAP users or groups that should be given administrator privileges.
  1524. #
  1525. # Teams are specified with a leading '@' character. Groups with spaces in the
  1526. # name can be entered as "@team name". This setting only applies when using
  1527. # LDAP to maintain team memberships.
  1528. #
  1529. # e.g. realm.ldap.admins = john @git_admins "@git admins"
  1530. #
  1531. # SPACE-DELIMITED
  1532. # SINCE 1.0.0
  1533. realm.ldap.admins = @Git_Admins
  1534. # Attribute(s) on the USER record that indicate their display (or full) name.
  1535. # Leave blank for no mapping available in LDAP.
  1536. #
  1537. # This may be a single attribute, or a string of multiple attributes. Examples:
  1538. # displayName - Uses the attribute 'displayName' on the user record
  1539. # ${personalTitle}. ${givenName} ${surname} - Will concatenate the 3
  1540. # attributes together, with a '.' after personalTitle
  1541. #
  1542. # SINCE 1.0.0
  1543. realm.ldap.displayName = displayName
  1544. # Attribute(s) on the USER record that indicate their email address.
  1545. # Leave blank for no mapping available in LDAP.
  1546. #
  1547. # This may be a single attribute, or a string of multiple attributes. Examples:
  1548. # email - Uses the attribute 'email' on the user record
  1549. # ${givenName}.${surname}@gitblit.com -Will concatenate the 2 attributes
  1550. # together with a '.' and '@' creating something like first.last@gitblit.com
  1551. #
  1552. # SINCE 1.0.0
  1553. realm.ldap.email = email
  1554. # Attribute on the USER record that indicate their username to be used in gitblit
  1555. # when synchronizing users from LDAP
  1556. # if blank, Gitblit will use uid
  1557. # For MS Active Directory this may be sAMAccountName
  1558. #
  1559. # SINCE 1.0.0
  1560. realm.ldap.uid = uid
  1561. # Defines whether to synchronize all LDAP users and teams into the user service
  1562. #
  1563. # Valid values: true, false
  1564. # If left blank, false is assumed
  1565. #
  1566. # SINCE 1.4.0
  1567. realm.ldap.synchronize = false
  1568. # Defines the period to be used when synchronizing users and teams from ldap.
  1569. #
  1570. # Must be of the form '<long> <TimeUnit>' where <TimeUnit> is one of 'MILLISECONDS', 'SECONDS', 'MINUTES', 'HOURS', 'DAYS'
  1571. # default: 5 MINUTES
  1572. #
  1573. # RESTART REQUIRED
  1574. # SINCE 1.4.0
  1575. realm.ldap.syncPeriod = 5 MINUTES
  1576. # Defines whether to delete non-existent LDAP users from the user service
  1577. # during synchronization. depends on realm.ldap.synchronize = true
  1578. #
  1579. # Valid values: true, false
  1580. # If left blank, true is assumed
  1581. #
  1582. # SINCE 1.4.0
  1583. realm.ldap.removeDeletedUsers = true
  1584. # URL of the Redmine.
  1585. #
  1586. # SINCE 1.2.0
  1587. realm.redmine.url = http://example.com/redmine
  1588. #
  1589. # Server Settings
  1590. #
  1591. # The temporary folder to decompress the embedded gitblit webapp.
  1592. #
  1593. # SINCE 0.5.0
  1594. # RESTART REQUIRED
  1595. # BASEFOLDER
  1596. server.tempFolder = ${baseFolder}/temp
  1597. # Specify the maximum number of concurrent http/https worker threads to allow.
  1598. #
  1599. # SINCE 1.3.0
  1600. # RESTART REQUIRED
  1601. server.threadPoolSize = 50
  1602. # Context path for the GO application. You might want to change the context
  1603. # path if running Gitblit behind a proxy layer such as mod_proxy.
  1604. #
  1605. # SINCE 0.7.0
  1606. # RESTART REQUIRED
  1607. server.contextPath = /
  1608. # Standard http port to serve. <= 0 disables this connector.
  1609. # On Unix/Linux systems, ports < 1024 require root permissions.
  1610. # Recommended value: 80 or 8080
  1611. #
  1612. # SINCE 0.5.0
  1613. # RESTART REQUIRED
  1614. server.httpPort = 0
  1615. # Secure/SSL https port to serve. <= 0 disables this connector.
  1616. # On Unix/Linux systems, ports < 1024 require root permissions.
  1617. # Recommended value: 443 or 8443
  1618. #
  1619. # SINCE 0.5.0
  1620. # RESTART REQUIRED
  1621. server.httpsPort = 8443
  1622. # Automatically redirect http requests to the secure https connector.
  1623. #
  1624. # This setting requires that you have configured server.httpPort and server.httpsPort.
  1625. # Unless you are on a private LAN where you trust all client connections, it is
  1626. # recommended to use https for all communications.
  1627. #
  1628. # SINCE 1.4.0
  1629. # RESTART REQUIRED
  1630. server.redirectToHttpsPort = false
  1631. # Specify the interface for Jetty to bind the standard connector.
  1632. # You may specify an ip or an empty value to bind to all interfaces.
  1633. # Specifying localhost will result in Gitblit ONLY listening to requests to
  1634. # localhost.
  1635. #
  1636. # SINCE 0.5.0
  1637. # RESTART REQUIRED
  1638. server.httpBindInterface =
  1639. # Specify the interface for Jetty to bind the secure connector.
  1640. # You may specify an ip or an empty value to bind to all interfaces.
  1641. # Specifying localhost will result in Gitblit ONLY listening to requests to
  1642. # localhost.
  1643. #
  1644. # SINCE 0.5.0
  1645. # RESTART REQUIRED
  1646. server.httpsBindInterface =
  1647. # Alias of certificate to use for https/SSL serving. If blank the first
  1648. # certificate found in the keystore will be used.
  1649. #
  1650. # SINCE 1.2.0
  1651. # RESTART REQUIRED
  1652. server.certificateAlias = localhost
  1653. # Password for SSL keystore.
  1654. # Keystore password and certificate password must match.
  1655. # This is provided for convenience, its probably more secure to set this value
  1656. # using the --storePassword command line parameter.
  1657. #
  1658. # If you are using the official JRE or JDK from Oracle you may not have the
  1659. # JCE Unlimited Strength Jurisdiction Policy files bundled with your JVM. Because
  1660. # of this, your store/key password can not exceed 7 characters. If you require
  1661. # longer passwords you may need to install the JCE Unlimited Strength Jurisdiction
  1662. # Policy files from Oracle.
  1663. #
  1664. # http://www.oracle.com/technetwork/java/javase/downloads/index.html
  1665. #
  1666. # Gitblit and the Gitblit Certificate Authority will both indicate if Unlimited
  1667. # Strength encryption is available.
  1668. #
  1669. # SINCE 0.5.0
  1670. # RESTART REQUIRED
  1671. server.storePassword = gitblit
  1672. # If serving over https (recommended) you might consider requiring clients to
  1673. # authenticate with ssl certificates. If enabled, only https clients with the
  1674. # a valid client certificate will be able to access Gitblit.
  1675. #
  1676. # If disabled, client certificate authentication is optional and will be tried
  1677. # first before falling-back to form authentication or basic authentication.
  1678. #
  1679. # Requiring client certificates to access any of Gitblit may be too extreme,
  1680. # consider this carefully.
  1681. #
  1682. # SINCE 1.2.0
  1683. # RESTART REQUIRED
  1684. server.requireClientCertificates = false
  1685. # Port for shutdown monitor to listen on.
  1686. #
  1687. # SINCE 0.5.0
  1688. # RESTART REQUIRED
  1689. server.shutdownPort = 8081