Berke Viktor
2014-10-03 1bfe119cc7b46f80f4568e92b00893b98592753e
commit | author | age
795b22 1 #
JM 2 # Git Servlet Settings
3 #
4
5 # Base folder for repositories.
6 # This folder may contain bare and non-bare repositories but Gitblit will only
7 # allow you to push to bare repositories.
8 # Use forward slashes even on Windows!!
9 # e.g. c:/gitrepos
10 #
11 # SINCE 0.5.0
12 # RESTART REQUIRED
13 git.repositoriesFolder = ${baseFolder}/git
14
15 # Build the available repository list at startup and cache this list for reuse.
16 # This reduces disk io when presenting the repositories page, responding to rpcs,
17 # etc, but it means that  Gitblit will not automatically identify repositories
18 # added or deleted by external tools.
19 #
20 # For this case you can use curl, wget, etc to issue an rpc request to clear the
21 # cache (e.g. https://localhost/rpc?req=CLEAR_REPOSITORY_CACHE)
22 #
23 # SINCE 1.1.0
24 git.cacheRepositoryList = true
25
26 # Search the repositories folder subfolders for other repositories.
27 # Repositories MAY NOT be nested (i.e. one repository within another)
28 # but they may be grouped together in subfolders.
29 # e.g. c:/gitrepos/libraries/mylibrary.git
30 #      c:/gitrepos/libraries/myotherlibrary.git
31 #
32 # SINCE 0.5.0
33 git.searchRepositoriesSubfolders = true
34
35 # Maximum number of folders to recurse into when searching for repositories.
36 # The default value, -1, disables depth limits.
37 #
38 # SINCE 1.1.0
39 git.searchRecursionDepth = -1
40
41 # List of regex exclusion patterns to match against folders found in
42 # *git.repositoriesFolder*.
43 # Use forward slashes even on Windows!!
44 # e.g. test/jgit\.git
45 #
46 # SPACE-DELIMITED
47 # CASE-SENSITIVE
48 # SINCE 1.1.0
49 git.searchExclusions =
50
51 # List of regex url patterns for extracting a repository name when locating
52 # submodules.
53 #   e.g. git.submoduleUrlPatterns = .*?://github.com/(.*) will extract
54 #   *gitblit/gitblit.git* from *git://github.com/gitblit/gitblit.git*
55 # If no matches are found then the submodule repository name is assumed to be
56 # whatever trails the last / character. (e.g. gitblit.git).
57 #
58 # SPACE-DELIMITED
59 # CASE-SENSITIVE
60 # SINCE 1.1.0
61 git.submoduleUrlPatterns = .*?://github.com/(.*)
62
63 # Allow push/pull over http/https with JGit servlet.
64 # If you do NOT want to allow Git clients to clone/push to Gitblit set this
65 # to false.  You might want to do this if you are only using ssh:// or git://.
66 # If you set this false, consider changing the *web.otherUrls* setting to
67 # indicate your clone/push urls.
68 #
69 # SINCE 0.5.0
70 git.enableGitServlet = true
71
72 # If you want to restrict all git servlet access to those with valid X509 client
73 # certificates then set this value to true.
74 #
75 # SINCE 1.2.0
76 git.requiresClientCertificate = false
77
78 # Enforce date checks on client certificates to ensure that they are not being
79 # used prematurely and that they have not expired.
80 #
81 # SINCE 1.2.0
82 git.enforceCertificateValidity = true
83
84 # List of OIDs to extract from a client certificate DN to map a certificate to
85 # an account username.
86 #
87 # e.g. git.certificateUsernameOIDs = CN
88 # e.g. git.certificateUsernameOIDs = FirstName LastName
89 #
90 # SPACE-DELIMITED
91 # SINCE 1.2.0
92 git.certificateUsernameOIDs = CN
93
94 # Only serve/display bare repositories.
95 # If there are non-bare repositories in git.repositoriesFolder and this setting
96 # is true, they will be excluded from the ui. 
97 #
98 # SINCE 0.9.0
99 git.onlyAccessBareRepositories = false
100
101 # Allow an authenticated user to create a destination repository on a push if
102 # the repository does not already exist.
103 #
104 # Administrator accounts can create a repository in any project.
105 # These repositories are created with the default access restriction and authorization
106 # control values.  The pushing account is set as the owner.
107 #
108 # Non-administrator accounts with the CREATE role may create personal repositories.
109 # These repositories are created as VIEW restricted for NAMED users.
110 # The pushing account is set as the owner.
111 #
112 # SINCE 1.2.0
113 git.allowCreateOnPush = true
114
115 # The default access restriction for new repositories.
116 # Valid values are NONE, PUSH, CLONE, VIEW
117 #  NONE = anonymous view, clone, & push
118 #  PUSH = anonymous view & clone and authenticated push
119 #  CLONE = anonymous view, authenticated clone & push
120 #  VIEW = authenticated view, clone, & push
121 #
122 # SINCE 1.0.0
123 git.defaultAccessRestriction = NONE
124
125 # The default authorization control for new repositories.
126 # Valid values are AUTHENTICATED and NAMED
127 #  AUTHENTICATED = any authenticated user is granted restricted access
128 #  NAMED = only named users/teams are granted restricted access
129 #
130 # SINCE 1.1.0
131 git.defaultAuthorizationControl = NAMED
132
133 # Enable JGit-based garbage collection. (!!EXPERIMENTAL!!)
134 #
135 # USE AT YOUR OWN RISK!
136 #
137 # If enabled, the garbage collection executor scans all repositories once a day
138 # at the hour of your choosing.  The GC executor will take each repository "offline",
139 # one-at-a-time, to check if the repository satisfies it's GC trigger requirements.
140 #
141 # While the repository is offline it will be inaccessible from the web UI or from
142 # any of the other services (git, rpc, rss, etc).
143 #
144 # Gitblit's GC Executor MAY NOT PLAY NICE with the other Git kids on the block,
145 # especially on Windows systems, so if you are using other tools please coordinate
146 # their usage with your GC Executor schedule or do not use this feature.
147 #
148 # The GC algorithm complex and the JGit team advises caution when using their
149 # young implementation of GC.
150 #
151 # http://wiki.eclipse.org/EGit/New_and_Noteworthy/2.1#Garbage_Collector_and_Repository_Storage_Statistics
152 #
153 # EXPERIMENTAL
154 # SINCE 1.2.0
155 # RESTART REQUIRED
156 git.enableGarbageCollection = false
157
158 # Hour of the day for the GC Executor to scan repositories.
159 # This value is in 24-hour time.
160 #
161 # SINCE 1.2.0
162 git.garbageCollectionHour = 0
163
164 # The default minimum total filesize of loose objects to trigger early garbage
165 # collection.
166 #
167 # You may specify a custom threshold for a repository in the repository's settings.
168 # Common unit suffixes of k, m, or g are supported.
169 #
170 # SINCE 1.2.0
171 git.defaultGarbageCollectionThreshold = 500k
172
173 # The default period, in days, between GCs for a repository.  If the total filesize
174 # of the loose object exceeds *git.garbageCollectionThreshold* or the repository's
175 # custom threshold, this period will be short-circuited. 
176 #
177 # e.g. if a repository collects 100KB of loose objects every day with a 500KB
178 # threshold and a period of 7 days, it will take 5 days for the loose objects to
179 # be collected, packed, and pruned.
180 #
181 # OR
182 #
183 # if a repository collects 10KB of loose objects every day with a 500KB threshold
184 # and a period of 7 days, it will take the full 7 days for the loose objects to be
185 # collected, packed, and pruned.
186 #
187 # You may specify a custom period for a repository in the repository's settings.
188 #
189 # The minimum value is 1 day since the GC Executor only runs once a day.
190 #
191 # SINCE 1.2.0
192 git.defaultGarbageCollectionPeriod = 7
193
194 # Number of bytes of a pack file to load into memory in a single read operation.
195 # This is the "page size" of the JGit buffer cache, used for all pack access
196 # operations. All disk IO occurs as single window reads. Setting this too large
197 # may cause the process to load more data than is required; setting this too small
198 # may increase the frequency of read() system calls.
199 #
200 # Default on JGit is 8 KiB on all platforms.
201 #
202 # Common unit suffixes of k, m, or g are supported.
203 # Documentation courtesy of the Gerrit project.
204 #
205 # SINCE 1.0.0
206 # RESTART REQUIRED
207 git.packedGitWindowSize = 8k
208
209 # Maximum number of bytes to load and cache in memory from pack files. If JGit
210 # needs to access more than this many bytes it will unload less frequently used
211 # windows to reclaim memory space within the process. As this buffer must be shared
212 # with the rest of the JVM heap, it should be a fraction of the total memory available.
213 #
214 # The JGit team recommends setting this value larger than the size of your biggest
215 # repository. This ensures you can serve most requests from memory.
216 #
217 # Default on JGit is 10 MiB on all platforms.
218 #
219 # Common unit suffixes of k, m, or g are supported.
220 # Documentation courtesy of the Gerrit project.
221 #
222 # SINCE 1.0.0
223 # RESTART REQUIRED
224 git.packedGitLimit = 10m
225
226 # Maximum number of bytes to reserve for caching base objects that multiple deltafied
227 # objects reference. By storing the entire decompressed base object in a cache Git
228 # is able to avoid unpacking and decompressing frequently used base objects multiple times.
229 #
230 # Default on JGit is 10 MiB on all platforms. You probably do not need to adjust
231 # this value.
232 #
233 # Common unit suffixes of k, m, or g are supported.
234 # Documentation courtesy of the Gerrit project.
235 #
236 # SINCE 1.0.0
237 # RESTART REQUIRED
238 git.deltaBaseCacheLimit = 10m
239
240 # Maximum number of pack files to have open at once. A pack file must be opened
241 # in order for any of its data to be available in a cached window.
242 #
243 # If you increase this to a larger setting you may need to also adjust the ulimit
244 # on file descriptors for the host JVM, as Gitblit needs additional file descriptors
245 # available for network sockets and other repository data manipulation.
246 #
247 # Default on JGit is 128 file descriptors on all platforms.
248 # Documentation courtesy of the Gerrit project.
249 #
250 # SINCE 1.0.0
251 # RESTART REQUIRED
252 git.packedGitOpenFiles = 128
253
254 # Largest object size, in bytes, that JGit will allocate as a contiguous byte
255 # array. Any file revision larger than this threshold will have to be streamed,
256 # typically requiring the use of temporary files under $GIT_DIR/objects to implement
257 # psuedo-random access during delta decompression.
258 #
259 # Servers with very high traffic should set this to be larger than the size of
260 # their common big files. For example a server managing the Android platform
261 # typically has to deal with ~10-12 MiB XML files, so 15 m would be a reasonable
262 # setting in that environment. Setting this too high may cause the JVM to run out
263 # of heap space when handling very big binary files, such as device firmware or
264 # CD-ROM ISO images. Make sure to adjust your JVM heap accordingly. 
265 #
266 # Default is 50 MiB on all platforms.
267 #
268 # Common unit suffixes of k, m, or g are supported.
269 # Documentation courtesy of the Gerrit project.
270 #
271 # SINCE 1.0.0
272 # RESTART REQUIRED
273 git.streamFileThreshold = 50m
274
275 # When true, JGit will use mmap() rather than malloc()+read() to load data from
276 # pack files.  The use of mmap can be problematic on some JVMs as the garbage
277 # collector must deduce that a memory mapped segment is no longer in use before
278 # a call to munmap() can be made by the JVM native code.
279 #
280 # In server applications (such as Gitblit) that need to access many pack files,
281 # setting this to true risks artificially running out of virtual address space, 
282 # as the garbage collector cannot reclaim unused mapped spaces fast enough.
283 #
284 # Default on JGit is false. Although potentially slower, it yields much more
285 # predictable behavior.
286 # Documentation courtesy of the Gerrit project.
287 #
288 # SINCE 1.0.0
289 # RESTART REQUIRED
290 git.packedGitMmap = false
291
292 #
293 # Groovy Integration
294 #
295
296 # Location of Groovy scripts to use for Pre and Post receive hooks.
297 # Use forward slashes even on Windows!!
298 # e.g. c:/groovy
299 #
300 # RESTART REQUIRED
301 # SINCE 0.8.0
302 groovy.scriptsFolder = ${baseFolder}/groovy
303
304 # Specify the directory Grape uses for downloading libraries.
305 # http://groovy.codehaus.org/Grape
306 #
307 # RESTART REQUIRED
308 # SINCE 1.0.0
309 groovy.grapeFolder = ${baseFolder}/groovy/grape
310
311 # Scripts to execute on Pre-Receive.
312 #
313 # These scripts execute after an incoming push has been parsed and validated
314 # but BEFORE the changes are applied to the repository.  You might reject a
315 # push in this script based on the repository and branch the push is attempting
316 # to change.
317 #
318 # Script names are case-sensitive on case-sensitive file systems.  You may omit
319 # the traditional ".groovy" from this list if your file extension is ".groovy" 
320 #
321 # NOTE:
322 # These scripts are only executed when pushing to *Gitblit*, not to other Git
323 # tooling you may be using.  Also note that these scripts are shared between
324 # repositories. These are NOT repository-specific scripts!  Within the script
325 # you may customize the control-flow for a specific repository by checking the
326 # *repository* variable.
327 #
328 # SPACE-DELIMITED
329 # CASE-SENSITIVE
330 # SINCE 0.8.0
331 groovy.preReceiveScripts =
332
333 # Scripts to execute on Post-Receive.
334 #
335 # These scripts execute AFTER an incoming push has been applied to a repository.
336 # You might trigger a continuous-integration build here or send a notification.
337 #
338 # Script names are case-sensitive on case-sensitive file systems.  You may omit
339 # the traditional ".groovy" from this list if your file extension is ".groovy" 
340 #
341 # NOTE:
342 # These scripts are only executed when pushing to *Gitblit*, not to other Git
343 # tooling you may be using.  Also note that these scripts are shared between
344 # repositories. These are NOT repository-specific scripts!  Within the script
345 # you may customize the control-flow for a specific repository by checking the
346 # *repository* variable.
347
348 # SPACE-DELIMITED
349 # CASE-SENSITIVE
350 # SINCE 0.8.0
351 groovy.postReceiveScripts =
352
353 # Repository custom fields for Groovy Hook mechanism
354 #
355 # List of key=label pairs of custom fields to prompt for in the Edit Repository
356 # page.  These keys are stored in the repository's git config file in the 
357 # section [gitblit "customFields"].  Key names are alphanumeric only.  These
358 # fields are intended to be used for the Groovy hook mechanism where a script
359 # can adjust it's execution based on the custom fields stored in the repository
360 # config.
361 #
362 # e.g. "commitMsgRegex=Commit Message Regular Expression" anotherProperty=Another
363 #
364 # SPACE-DELIMITED
365 # SINCE 1.0.0
366 groovy.customFields = 
367
368 #
369 # Authentication Settings
370 #
371
372 # Require authentication to see everything but the admin pages
373 #
374 # SINCE 0.5.0
375 # RESTART REQUIRED
376 web.authenticateViewPages = false
377
378 # Require admin authentication for the admin functions and pages
379 #
380 # SINCE 0.5.0
381 # RESTART REQUIRED
382 web.authenticateAdminPages = true
383
384 # Allow Gitblit to store a cookie in the user's browser for automatic
385 # authentication.  The cookie is generated by the user service.
386 #
387 # SINCE 0.5.0
388 web.allowCookieAuthentication = true
389
390 # Config file for storing project metadata
391 #
392 # SINCE 1.2.0
393 web.projectsFile = ${baseFolder}/projects.conf
394
395 # Either the full path to a user config file (users.conf)
396 # OR the full path to a simple user properties file (users.properties)
397 # OR a fully qualified class name that implements the IUserService interface.
398 #
399 # Alternative user services:
400 #    com.gitblit.LdapUserService
401 #    com.gitblit.RedmineUserService
402 #
403 # Any custom user service implementation must have a public default constructor.
404 #
405 # SINCE 0.5.0
406 # RESTART REQUIRED
407 realm.userService = test-ui-users.conf
408
409 # How to store passwords.
410 # Valid values are plain, md5, or combined-md5.  md5 is the hash of password.
411 # combined-md5 is the hash of username.toLowerCase()+password.
412 # Default is md5.
413 #
414 # SINCE 0.5.0 
415 realm.passwordStorage = md5
416
417 # Minimum valid length for a plain text password.
418 # Default value is 5.  Absolute minimum is 4.
419 #
420 # SINCE 0.5.0 
421 realm.minPasswordLength = 5
422
423 #
424 # Gitblit Web Settings
425 #
426 # If blank Gitblit is displayed.
427 #
428 # SINCE 0.5.0
429 web.siteName =
430
431 # If *web.authenticateAdminPages*=true, users with "admin" role can create
432 # repositories, create users, and edit repository metadata.
433 #
434 # If *web.authenticateAdminPages*=false, any user can execute the aforementioned
435 # functions. 
436 #
437 # SINCE 0.5.0 
438 web.allowAdministration = true
439
440 # Allows rpc clients to list repositories and possibly manage or administer the 
441 # Gitblit server, if the authenticated account has administrator permissions.
442 # See *web.enableRpcManagement* and *web.enableRpcAdministration*.
443 #
444 # SINCE 0.7.0 
445 web.enableRpcServlet = true
446
447 # Allows rpc clients to manage repositories and users of the Gitblit instance,
448 # if the authenticated account has administrator permissions.
449 # Requires *web.enableRpcServlet=true*.
450 #
451 # SINCE 0.7.0 
452 web.enableRpcManagement = false
453
454 # Allows rpc clients to control the server settings and monitor the health of this
455 # this Gitblit instance, if the authenticated account has administrator permissions.
456 # Requires *web.enableRpcServlet=true* and *web.enableRpcManagement*.
457 #
458 # SINCE 0.7.0 
459 web.enableRpcAdministration = false
460
461 # Full path to a configurable robots.txt file.  With this file you can control
462 # what parts of your Gitblit server respectable robots are allowed to traverse.
463 # http://googlewebmastercentral.blogspot.com/2008/06/improving-on-robots-exclusion-protocol.html
464 #
465 # SINCE 1.0.0
466 web.robots.txt = 
467
468 # If true, the web ui layout will respond and adapt to the browser's dimensions.
469 # if false, the web ui will use a 940px fixed-width layout.
470 # http://twitter.github.com/bootstrap/scaffolding.html#responsive
471 #
472 # SINCE 1.0.0
473 web.useResponsiveLayout = true
474
475 # Allow Gravatar images to be displayed in Gitblit pages.
476 #
477 # SINCE 0.8.0
478 web.allowGravatar = true
479
480 # Allow dynamic zip downloads.
481 #
482 # SINCE 0.5.0   
483 web.allowZipDownloads = true
484
485 # If *web.allowZipDownloads=true* the following formats will be displayed for
486 # download compressed archive links:
487 #
488 # zip   = standard .zip
489 # tar   = standard tar format (preserves *nix permissions and symlinks)
490 # gz    = gz-compressed tar
491 # xz    = xz-compressed tar
492 # bzip2 = bzip2-compressed tar
493 #
494 # SPACE-DELIMITED
495 # SINCE 1.2.0
496 web.compressedDownloads = zip gz
497
498 # Allow optional Lucene integration. Lucene indexing is an opt-in feature.
499 # A repository may specify branches to index with Lucene instead of using Git
500 # commit traversal. There are scenarios where you may want to completely disable
501 # Lucene indexing despite a repository specifying indexed branches.  One such
502 # scenario is on a resource-constrained federated Gitblit mirror.
503 #
504 # SINCE 0.9.0
505 web.allowLuceneIndexing = false
506
507 # Allows an authenticated user to create forks of a repository
508 #
509 # set this to false if you want to disable all fork controls on the web site
510 #
511 web.allowForking = true
512
513 # Controls the length of shortened commit hash ids
514 #
515 # SINCE 1.2.0
516 web.shortCommitIdLength = 6
517
518 # Use Clippy (Flash solution) to provide a copy-to-clipboard button.
519 # If false, a button with a more primitive JavaScript-based prompt box will
520 # offer a 3-step (click, ctrl+c, enter) copy-to-clipboard alternative.
521 #
522 # SINCE 0.8.0
523 web.allowFlashCopyToClipboard = true
524
525 # Default maximum number of commits that a repository may contribute to the
526 # activity page, regardless of the selected duration.  This setting may be valuable
527 # for an extremely busy server.  This value may also be configed per-repository
528 # in Edit Repository. 0 disables this throttle.
529 #
530 # SINCE 1.2.0
531 web.maxActivityCommits = 0
532
533 # Default number of entries to include in RSS Syndication links
534 #
535 # SINCE 0.5.0
536 web.syndicationEntries = 25
537
538 # Show the size of each repository on the repositories page.
539 # This requires recursive traversal of each repository folder.  This may be
540 # non-performant on some operating systems and/or filesystems. 
541 #
542 # SINCE 0.5.2
543 web.showRepositorySizes = true
544
545 # List of custom regex expressions that can be displayed in the Filters menu
546 # of the Repositories and Activity pages.  Keep them very simple because you
547 # are likely to run into encoding issues if they are too complex.
548 #
549 # Use !!! to separate the filters 
550 #
551 # SINCE 0.8.0
552 web.customFilters =
553
554 # Show federation registrations (without token) and the current pull status
555 # to non-administrator users. 
556 #
557 # SINCE 0.6.0
558 web.showFederationRegistrations = false
559
560 # This is the message displayed when *web.authenticateViewPages=true*.
561 # This can point to a file with Markdown content.
562 # Specifying "gitblit" uses the internal login message.
563 #
564 # SINCE 0.7.0
565 web.loginMessage = gitblit
566
567 # This is the message displayed above the repositories table.
568 # This can point to a file with Markdown content.
569 # Specifying "gitblit" uses the internal welcome message.
570 #
571 # SINCE 0.5.0
572 web.repositoriesMessage = gitblit
573
574 # Ordered list of charsets/encodings to use when trying to display a blob.
575 # If empty, UTF-8 and ISO-8859-1 are used.  The server's default charset
576 # is always appended to the encoding list.  If all encodings fail to cleanly
577 # decode the blob content, UTF-8 will be used with the standard malformed
578 # input/unmappable character replacement strings.
579
580 # SPACE-DELIMITED
581 # SINCE 1.0.0
582 web.blobEncodings = UTF-8 ISO-8859-1
583
584 # Manually set the default timezone to be used by Gitblit for display in the 
585 # web ui.  This value is independent of the JVM timezone.  Specifying a blank
586 # value will default to the JVM timezone.
587 # e.g. America/New_York, US/Pacific, UTC, Europe/Berlin
588 #
589 # SINCE 0.9.0
590 # RESTART REQUIRED
591 web.timezone =
592
593 # Use the client timezone when formatting dates.
594 # This uses AJAX to determine the browser's timezone and may require more
595 # server overhead because a Wicket session is created.  All Gitblit pages
596 # attempt to be stateless, if possible.
597 #
598 # SINCE 0.5.0
599 # RESTART REQUIRED
600 web.useClientTimezone = false
601
602 # Time format
603 # <http://download.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html>
604 #
605 # SINCE 0.8.0
606 web.timeFormat = HH:mm
607
608 # Short date format
609 # <http://download.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html>
610 #
611 # SINCE 0.5.0
612 web.datestampShortFormat = yyyy-MM-dd
613
614 # Long date format
615 #
616 # SINCE 0.8.0
617 web.datestampLongFormat = EEEE, MMMM d, yyyy
618
619 # Long timestamp format
620 # <http://download.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html>
621 #
622 # SINCE 0.5.0
623 web.datetimestampLongFormat = EEEE, MMMM d, yyyy HH:mm Z
624
625 # Mount URL parameters
626 # This setting controls if pretty or parameter URLs are used.
627 # i.e.
628 # if true:
629 #     http://localhost/commit/myrepo/abcdef
630 # if false:
631 #     http://localhost/commit/?r=myrepo&h=abcdef
632 #
633 # SINCE 0.5.0
634 # RESTART REQUIRED
635 web.mountParameters = true
636
637 # Some servlet containers (e.g. Tomcat >= 6.0.10) disallow '/' (%2F) encoding
638 # in URLs as a security precaution for proxies.  This setting tells Gitblit
639 # to preemptively replace '/' with '*' or '!' for url string parameters.
640 #
641 # <https://issues.apache.org/jira/browse/WICKET-1303>
642 # <http://tomcat.apache.org/security-6.html#Fixed_in_Apache_Tomcat_6.0.10>
643 # Add *-Dorg.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH=true* to your
644 # *CATALINA_OPTS* or to your JVM launch parameters
645 #
646 # SINCE 0.5.2
647 web.forwardSlashCharacter = /
648
649 # Show other URLs on the summary page for accessing your git repositories
650 # Use spaces to separate urls. {0} is the token for the repository name.
651 # e.g.
652 # web.otherUrls = ssh://localhost/git/{0} git://localhost/git/{0}
653 #
654 # SPACE-DELIMITED
655 # SINCE 0.5.0
656 web.otherUrls = 
657
658 # Choose how to present the repositories list.
659 #   grouped = group nested/subfolder repositories together (no sorting)
660 #   flat = flat list of repositories (sorting allowed)
661 #
662 # SINCE 0.5.0
663 web.repositoryListType = grouped
664
665 # If using a grouped repository list and there are repositories at the
666 # root level of your repositories folder, you may specify the displayed
667 # group name with this setting.  This value is only used for web presentation.
668 #
669 # SINCE 0.5.0
670 web.repositoryRootGroupName = main
671
672 # Display the repository swatch color next to the repository name link in the 
673 # repositories list. 
674 #
675 # SINCE 0.8.0
676 web.repositoryListSwatches = true
677
678 # Choose the diff presentation style: gitblt, gitweb, or plain
679 #
680 # SINCE 0.5.0
681 web.diffStyle = gitblit
682
683 # Control if email addresses are shown in web ui
684 #
685 # SINCE 0.5.0
686 web.showEmailAddresses = true
687
688 # Shows a combobox in the page links header with commit, committer, and author
689 # search selection.  Default search is commit.
690 #
691 # SINCE 0.5.0
692 web.showSearchTypeSelection = false
693
694 # Generates a line graph of repository activity over time on the Summary page.
695 # This uses the Google Charts API.
696 #
697 # SINCE 0.5.0 
698 web.generateActivityGraph = true
699
700 # The number of days to show on the activity page.
701 # Value must exceed 0 else default of 14 is used
702 #
703 # SINCE 0.8.0
704 web.activityDuration = 14
705
706 # The number of commits to display on the summary page
707 # Value must exceed 0 else default of 20 is used
708 #
709 # SINCE 0.5.0
710 web.summaryCommitCount = 16
711
712 # The number of tags/branches to display on the summary page.
713 # -1 = all tags/branches
714 # 0 = hide tags/branches
715 # N = N tags/branches
716 #
717 # SINCE 0.5.0
718 web.summaryRefsCount = 5
719
720 # The number of items to show on a page before showing the first, prev, next
721 # pagination links.  A default if 50 is used for any invalid value.
722 #
723 # SINCE 0.5.0
724 web.itemsPerPage = 50
725
726 # Registered file extensions to ignore during Lucene indexing
727 #
728 # SPACE-DELIMITED
729 # SINCE 0.9.0
730 web.luceneIgnoreExtensions = 7z arc arj bin bmp dll doc docx exe gif gz jar jpg lib lzh odg odf odt pdf ppt png so swf xcf xls xlsx zip
731
732 # Registered extensions for google-code-prettify
733 #
734 # SPACE-DELIMITED
735 # SINCE 0.5.0
736 web.prettyPrintExtensions = c cpp cs css frm groovy htm html java js php pl prefs properties py rb scala sh sql xml vb
737
738 # Registered extensions for markdown transformation
739 #
740 # SPACE-DELIMITED
741 # CASE-SENSITIVE
742 # SINCE 0.5.0
743 web.markdownExtensions = md mkd markdown MD MKD
744
745 # Image extensions
746 #
747 # SPACE-DELIMITED
748 # SINCE 0.5.0
1bfe11 749 web.imageExtensions = bmp jpg jpeg gif png ico 
795b22 750
JM 751 # Registered extensions for binary blobs
752 #
753 # SPACE-DELIMITED
754 # SINCE 0.5.0
755 web.binaryExtensions = jar pdf tar.gz zip
756
757 # Aggressive heap management will run the garbage collector on every generated
758 # page.  This slows down page generation a little but improves heap consumption. 
759 #
760 # SINCE 0.5.0
761 web.aggressiveHeapManagement = false
762
763 # Run the webapp in debug mode
764 #
765 # SINCE 0.5.0
766 # RESTART REQUIRED
767 web.debugMode = false
768
769 # Enable/disable global regex substitutions (i.e. shared across repositories)
770 #
771 # SINCE 0.5.0
772 regex.global = true
773
774 # Example global regex substitutions
775 # Use !!! to separate the search pattern and the replace pattern
776 # searchpattern!!!replacepattern
777 # SINCE 0.5.0
778 regex.global.bug = \\b(Bug:)(\\s*[#]?|-){0,1}(\\d+)\\b!!!<a href="http://somehost/bug/$3">Bug-Id: $3</a>
779 # SINCE 0.5.0
780 regex.global.changeid = \\b(Change-Id:\\s*)([A-Za-z0-9]*)\\b!!!<a href="http://somehost/changeid/$2">Change-Id: $2</a>
781
782 # Example per-repository regex substitutions overrides global
783 # SINCE 0.5.0
784 regex.myrepository.bug = \\b(Bug:)(\\s*[#]?|-){0,1}(\\d+)\\b!!!<a href="http://elsewhere/bug/$3">Bug-Id: $3</a>
785
786 #
787 # Mail Settings
788 # SINCE 0.6.0
789 #
790 # Mail settings are used to notify administrators of received federation proposals
791 #
792
793 # ip or hostname of smtp server
794 #
795 # SINCE 0.6.0
796 mail.server =
797
798 # port to use for smtp requests
799 #
800 # SINCE 0.6.0
801 mail.port = 25
802
803 # debug the mail executor
804 #
805 # SINCE 0.6.0
806 mail.debug = false
807
808 # if your smtp server requires authentication, supply the credentials here
809 #
810 # SINCE 0.6.0
811 mail.username =
812 # SINCE 0.6.0
813 mail.password =
814
815 # from address for generated emails
816 #
817 # SINCE 0.6.0
818 mail.fromAddress = 
819
820 # List of email addresses for the Gitblit administrators
821 #
822 # SPACE-DELIMITED
823 # SINCE 0.6.0
824 mail.adminAddresses = 
825
826 # List of email addresses for sending push email notifications.
827 #
828 # This key currently requires use of the sendemail.groovy hook script.
829 # If you set sendemail.groovy in *groovy.postReceiveScripts* then email
830 # notifications for all repositories (regardless of access restrictions!)
831 # will be sent to these addresses.
832 #
833 # SPACE-DELIMITED
834 # SINCE 0.8.0
835 mail.mailingLists =
836
837 #
838 # Federation Settings
839 # SINCE 0.6.0
840 #
841 # A Gitblit federation is a way to backup one Gitblit instance to another.
842 #
843 # *git.enableGitServlet* must be true to use this feature.
844
845 # Your federation name is used for federation status acknowledgments.  If it is
846 # unset, and you elect to send a status acknowledgment, your Gitblit instance
847 # will be identified by its hostname, if available, else your internal ip address.
848 # The source Gitblit instance will also append your external IP address to your
849 # identification to differentiate multiple pulling systems behind a single proxy.
850 #
851 # SINCE 0.6.0
852 federation.name =
853
854 # Specify the passphrase of this Gitblit instance.
855 #
856 # An unspecified (empty) passphrase disables processing federation requests.
857 #
858 # This value can be anything you want: an integer, a sentence, an haiku, etc.
859 # Keep the value simple, though, to avoid Java properties file encoding issues.
860 #
861 # Changing your passphrase will break any registrations you have established with other
862 # Gitblit instances.
863 #
864 # CASE-SENSITIVE
865 # SINCE 0.6.0
866 # RESTART REQUIRED *(only to enable or disable federation)*
867 federation.passphrase =
868
869 # Control whether or not this Gitblit instance can receive federation proposals
870 # from another Gitblit instance.  Registering a federated Gitblit is a manual
871 # process.  Proposals help to simplify that process by allowing a remote Gitblit
872 # instance to send your Gitblit instance the federation pull data.
873 #
874 # SINCE 0.6.0
875 federation.allowProposals = false
876
877 # The destination folder for cached federation proposals.
878 # Use forward slashes even on Windows!!
879 #
880 # SINCE 0.6.0
881 federation.proposalsFolder = ${baseFolder}/proposals
882
883 # The default pull frequency if frequency is unspecified on a registration
884 #
885 # SINCE 0.6.0
886 federation.defaultFrequency = 60 mins
887
888 # Federation Sets are named groups of repositories.  The Federation Sets are 
889 # available for selection in the repository settings page.  You can assign a
890 # repository to one or more sets and then distribute the token for the set.
891 # This allows you to grant federation pull access to a subset of your available
892 # repositories.  Tokens for federation sets only grant repository pull access.
893 #
894 # SPACE-DELIMITED
895 # CASE-SENSITIVE
896 # SINCE 0.6.0
897 federation.sets = 
898
899 # Federation pull registrations
900 # Registrations are read once, at startup.
901 #
902 # RESTART REQUIRED
903 #
904 # frequency:
905 #   The shortest frequency allowed is every 5 minutes
906 #   Decimal frequency values are cast to integers
907 #   Frequency values may be specified in mins, hours, or days
908 #   Values that can not be parsed or are unspecified default to *federation.defaultFrequency*
909 #
910 # folder:
911 #   if unspecified, the folder is *git.repositoriesFolder*
912 #   if specified, the folder is relative to *git.repositoriesFolder*
913 #
914 # bare:
915 #   if true, each repository will be created as a *bare* repository and will not
916 #   have a working directory.
917 #
918 #   if false, each repository will be created as a normal repository suitable
919 #   for local work.
920 #
921 # mirror:
922 #   if true, each repository HEAD is reset to *origin/master* after each pull.
923 #   The repository will be flagged *isFrozen* after the initial clone.
924 #
925 #   if false, each repository HEAD will point to the FETCH_HEAD of the initial
926 #   clone from the origin until pushed to or otherwise manipulated.
927 #
928 # mergeAccounts:
929 #   if true, remote accounts and their permissions are merged into your 
930 #   users.properties file 
931 #
932 # notifyOnError:
933 #   if true and the mail configuration is properly set, administrators will be
934 #   notified by email of pull failures
935 #
936 # include and exclude:
937 #   Space-delimited list of repositories to include or exclude from pull
938 #   may be * wildcard to include or exclude all
939 #   may use fuzzy match (e.g. org.eclipse.*)
940
941 #
942 # (Nearly) Perfect Mirror example
943 #
944
945 #federation.example1.url = https://go.gitblit.com
946 #federation.example1.token = 6f3b8a24bf970f17289b234284c94f43eb42f0e4
947 #federation.example1.frequency = 120 mins
948 #federation.example1.folder =
949 #federation.example1.bare = true 
950 #federation.example1.mirror = true 
951 #federation.example1.mergeAccounts = true
952
953 #
954 # Advanced Realm Settings
955 #
956
957 # URL of the LDAP server.
958 # To use encrypted transport, use either ldaps:// URL for SSL or ldap+tls:// to
959 # send StartTLS command.
960 #
961 # SINCE 1.0.0
962 realm.ldap.server = ldap://localhost
963
964 # Login username for LDAP searches.
965 # If this value is unspecified, anonymous LDAP login will be used.
966
967 # e.g. mydomain\\username
968 #
969 # SINCE 1.0.0
970 realm.ldap.username = cn=Directory Manager
971
972 # Login password for LDAP searches.
973 #
974 # SINCE 1.0.0
975 realm.ldap.password = password
976
977 # The LdapUserService must be backed by another user service for standard user
978 # and team management.
979 # default: users.conf
980 #
981 # SINCE 1.0.0
982 # RESTART REQUIRED
983 realm.ldap.backingUserService = test-ui-users.conf
984
985 # Delegate team membership control to LDAP.
986 #
987 # If true, team user memberships will be specified by LDAP groups.  This will
988 # disable team selection in Edit User and user selection in Edit Team.
989 #
990 # If false, LDAP will only be used for authentication and Gitblit will maintain
991 # team memberships with the *realm.ldap.backingUserService*.
992 #
993 # SINCE 1.0.0
994 realm.ldap.maintainTeams = false
995
996 # Root node for all LDAP users
997 #
998 # This is the root node from which subtree user searches will begin.
999 # If blank, Gitblit will search ALL nodes.
1000 #
1001 # SINCE 1.0.0
1002 realm.ldap.accountBase = OU=Users,OU=UserControl,OU=MyOrganization,DC=MyDomain
1003
1004 # Filter criteria for LDAP users
1005 #
1006 # Query pattern to use when searching for a user account. This may be any valid 
1007 # LDAP query expression, including the standard (&) and (|) operators.
1008 #
1009 # Variables may be injected via the ${variableName} syntax.
1010 # Recognized variables are:
1011 #    ${username} - The text entered as the user name
1012 #
1013 # SINCE 1.0.0
1014 realm.ldap.accountPattern = (&(objectClass=person)(sAMAccountName=${username}))
1015
1016 # Root node for all LDAP groups to be used as Gitblit Teams
1017 #
1018 # This is the root node from which subtree team searches will begin.
1019 # If blank, Gitblit will search ALL nodes.  
1020 #
1021 # SINCE 1.0.0
1022 realm.ldap.groupBase = OU=Groups,OU=UserControl,OU=MyOrganization,DC=MyDomain
1023
1024 # Filter criteria for LDAP groups
1025 #
1026 # Query pattern to use when searching for a team. This may be any valid 
1027 # LDAP query expression, including the standard (&) and (|) operators.
1028 #
1029 # Variables may be injected via the ${variableName} syntax.
1030 # Recognized variables are:
1031 #    ${username} - The text entered as the user name
1032 #    ${dn} - The Distinguished Name of the user logged in
1033 #
1034 # All attributes from the LDAP User record are available. For example, if a user
1035 # has an attribute "fullName" set to "John", "(fn=${fullName})" will be 
1036 # translated to "(fn=John)".
1037 #
1038 # SINCE 1.0.0
1039 realm.ldap.groupMemberPattern = (&(objectClass=group)(member=${dn}))
1040
1041 # LDAP users or groups that should be given administrator privileges.
1042 #
1043 # Teams are specified with a leading '@' character.  Groups with spaces in the
1044 # name can be entered as "@team name".
1045 #
1046 # e.g. realm.ldap.admins = john @git_admins "@git admins"
1047 #
1048 # SPACE-DELIMITED
1049 # SINCE 1.0.0
1050 realm.ldap.admins = @Git_Admins
1051
1052 # Attribute(s) on the USER record that indicate their display (or full) name.
1053 # Leave blank for no mapping available in LDAP.
1054 #
1055 # This may be a single attribute, or a string of multiple attributes.  Examples:
1056 #  displayName - Uses the attribute 'displayName' on the user record
1057 #  ${personalTitle}. ${givenName} ${surname} - Will concatenate the 3 
1058 #       attributes together, with a '.' after personalTitle
1059 #
1060 # SINCE 1.0.0
1061 realm.ldap.displayName = displayName
1062
1063 # Attribute(s) on the USER record that indicate their email address.
1064 # Leave blank for no mapping available in LDAP.
1065 #
1066 # This may be a single attribute, or a string of multiple attributes.  Examples:
1067 #  email - Uses the attribute 'email' on the user record
1068 #  ${givenName}.${surname}@gitblit.com -Will concatenate the 2 attributes
1069 #       together with a '.' and '@' creating something like first.last@gitblit.com 
1070 #
1071 # SINCE 1.0.0
1072 realm.ldap.email = email
1073
1074 # The RedmineUserService must be backed by another user service for standard user
1075 # and team management.
1076 # default: users.conf
1077 #
1078 # RESTART REQUIRED
1079 realm.redmine.backingUserService = test-ui-users.conf
1080
1081 # URL of the Redmine.
1082 realm.redmine.url = http://example.com/redmine
1083
1084 #
1085 # Server Settings
1086 #
1087
1088 # The temporary folder to decompress the embedded gitblit webapp. 
1089 #
1090 # SINCE 0.5.0
1091 # RESTART REQUIRED
1092 server.tempFolder = ${baseFolder}/temp
1093
1094 # Use Jetty NIO connectors.  If false, Jetty Socket connectors will be used.
1095 #
1096 # SINCE 0.5.0
1097 # RESTART REQUIRED
1098 server.useNio = true
1099
1100 # Context path for the GO application.  You might want to change the context
1101 # path if running Gitblit behind a proxy layer such as mod_proxy.
1102 #
1103 # SINCE 0.7.0
1104 # RESTART REQUIRED
1105 server.contextPath = /
1106
1107 # Standard http port to serve.  <= 0 disables this connector.
1108 # On Unix/Linux systems, ports < 1024 require root permissions.
1109 # Recommended value: 80 or 8080
1110 #
1111 # SINCE 0.5.0
1112 # RESTART REQUIRED
1113 server.httpPort = 0
1114
1115 # Secure/SSL https port to serve. <= 0 disables this connector.
1116 # On Unix/Linux systems, ports < 1024 require root permissions.
1117 # Recommended value: 443 or 8443
1118 #
1119 # SINCE 0.5.0
1120 # RESTART REQUIRED
1121 server.httpsPort = 8443
1122
1123 # Port for serving an Apache JServ Protocol (AJP) 1.3 connector for integrating
1124 # Gitblit GO into an Apache HTTP server setup.  <= 0 disables this connector.
1125 # Recommended value: 8009
1126 #
1127 # SINCE 0.9.0
1128 # RESTART REQUIRED
1129 server.ajpPort = 0
1130
1131 # Specify the interface for Jetty to bind the standard connector.
1132 # You may specify an ip or an empty value to bind to all interfaces.
1133 # Specifying localhost will result in Gitblit ONLY listening to requests to
1134 # localhost.
1135 #
1136 # SINCE 0.5.0
1137 # RESTART REQUIRED
1138 server.httpBindInterface = localhost
1139
1140 # Specify the interface for Jetty to bind the secure connector.
1141 # You may specify an ip or an empty value to bind to all interfaces.
1142 # Specifying localhost will result in Gitblit ONLY listening to requests to
1143 # localhost.
1144 #
1145 # SINCE 0.5.0
1146 # RESTART REQUIRED
1147 server.httpsBindInterface = localhost
1148
1149 # Specify the interface for Jetty to bind the AJP connector.
1150 # You may specify an ip or an empty value to bind to all interfaces.
1151 # Specifying localhost will result in Gitblit ONLY listening to requests to
1152 # localhost.
1153 #
1154 # SINCE 0.9.0
1155 # RESTART REQUIRED
1156 server.ajpBindInterface = localhost
1157
1158 # Alias of certificate to use for https/SSL serving.  If blank the first
1159 # certificate found in the keystore will be used. 
1160 #
1161 # SINCE 1.2.0
1162 # RESTART REQUIRED
1163 server.certificateAlias = localhost
1164
1165 # Password for SSL keystore.
1166 # Keystore password and certificate password must match.
1167 # This is provided for convenience, its probably more secure to set this value
1168 # using the --storePassword command line parameter.
1169 #
1170 # If you are using the official JRE or JDK from Oracle you may not have the
1171 # JCE Unlimited Strength Jurisdiction Policy files bundled with your JVM.  Because
1172 # of this, your store/key password can not exceed 7 characters.  If you require
1173 # longer passwords you may need to install the JCE Unlimited Strength Jurisdiction
1174 # Policy files from Oracle.
1175 #
1176 # http://www.oracle.com/technetwork/java/javase/downloads/index.html
1177 #
1178 # Gitblit and the Gitblit Certificate Authority will both indicate if Unlimited
1179 # Strength encryption is available.
1180 #
1181 # SINCE 0.5.0
1182 # RESTART REQUIRED
1183 server.storePassword = gitblit
1184
1185 # If serving over https (recommended) you might consider requiring clients to
1186 # authenticate with ssl certificates.  If enabled, only https clients with the
1187 # a valid client certificate will be able to access Gitblit.
1188 #
1189 # If disabled, client certificate authentication is optional and will be tried
1190 # first before falling-back to form authentication or basic authentication.
1191 #
1192 # Requiring client certificates to access any of Gitblit may be too extreme,
1193 # consider this carefully.
1194 #
1195 # SINCE 1.2.0
1196 # RESTART REQUIRED
1197 server.requireClientCertificates = false
1198
1199 # Port for shutdown monitor to listen on.
1200 #
1201 # SINCE 0.5.0
1202 # RESTART REQUIRED
1203 server.shutdownPort = 8081