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