<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <!-- Begin Header --> <title>Gitblit</title> <meta charset="utf-8"> <meta name="ROBOTS" content="INDEX"> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <link rel="stylesheet" href="./bootstrap/css/bootstrap.css"> <link rel='shortcut icon' type='image/png' href='./gitblt-favicon.png' /> <link rel="stylesheet" href="./prettify/prettify.css" /> <script src="./prettify/prettify.js"></script> <script src="./bootstrap/js/jquery.js"></script> <script src="./bootstrap/js/bootstrap.min.js"></script> </head> <body onload='prettyPrint()'> <!-- Navigation Bar --> <div class="navbar navbar-fixed-top"> <div class="navbar-inner"> <div class="container"> <a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse"> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </a> <a class="brand" href="./"><img src="./gitblt_25_white.png" alt="Gitblit"></img></a> <div class="nav-collapse"> <ul class="nav"> <li class='dropdown'> <!-- Menu --> <a class='dropdown-toggle' href='#' data-toggle='dropdown'>about<b class='caret'></b></a> <ul class='dropdown-menu'> <li><a href='index.html'>overview</a></li> <li><a href='features.html'>features</a></li> <li><a href='screenshots.html'>screenshots</a></li> </ul></li> <!-- End Menu --> <li class='dropdown'> <!-- Menu --> <a class='dropdown-toggle' href='#' data-toggle='dropdown'>documentation<b class='caret'></b></a> <ul class='dropdown-menu'> <li class='dropdown-submenu'> <!-- Submenu --> <a tabindex='-1' href='#'>Gitblit GO</a> <ul class='dropdown-menu'> <li><a href='setup_go.html'>setup GO</a></li> <li><a href='upgrade_go.html'>upgrade GO</a></li> </ul></li> <!-- End Submenu --> <li class='divider'></li> <li class='dropdown-submenu'> <!-- Submenu --> <a tabindex='-1' href='#'>Gitblit WAR</a> <ul class='dropdown-menu'> <li><a href='setup_war.html'>setup WAR</a></li> <li><a href='upgrade_war.html'>upgrade WAR</a></li> </ul></li> <!-- End Submenu --> <li class='divider'></li> <li class='dropdown-submenu'> <!-- Submenu --> <a tabindex='-1' href='#'>Server Configuration</a> <ul class='dropdown-menu'> <li><a href='administration.html'>administration</a></li> <li><a href='setup_authentication.html'>authentication</a></li> <li><a href='setup_hooks.html'>push hooks</a></li> <li><a href='setup_lucene.html'>lucene indexing</a></li> <li><a href='setup_proxy.html'>reverse proxies</a></li> <li><a href='setup_clientmenus.html'>client app menus</a></li> <li><a href='setup_bugtraq.html'>bugtraq</a></li> <li><a href='setup_mirrors.html'>mirrors</a></li> <li><a href='setup_scaling.html'>scaling</a></li> <li><a href='setup_fail2ban.html'>fail2ban</a></li> <li><a href='setup_filestore.html'>filestore (Git LFS)</a></li> <li class='divider'></li> <li><a href='setup_viewer.html'>Gitblit as a viewer</a></li> </ul></li> <!-- End Submenu --> <li class='divider'></li> <li class='dropdown-submenu'> <!-- Submenu --> <a tabindex='-1' href='#'>Client Usage</a> <ul class='dropdown-menu'> <li><a href='setup_transport_http.html'>using HTTP/HTTPS</a></li> <li><a href='setup_transport_ssh.html'>using SSH</a></li> <li><a href='eclipse_plugin.html'>using the Eclipse plugin</a></li> </ul></li> <!-- End Submenu --> <li class='divider'></li> <li class='dropdown-submenu'> <!-- Submenu --> <a tabindex='-1' href='#'>Tickets</a> <ul class='dropdown-menu'> <li><a href='tickets_overview.html'>overview</a></li> <li><a href='tickets_using.html'>using</a></li> <li><a href='tickets_barnum.html'>barnum</a></li> <li><a href='tickets_setup.html'>setup</a></li> <li><a href='tickets_replication.html'>replication & advanced administration</a></li> </ul></li> <!-- End Submenu --> <li class='divider'></li> <li class='dropdown-submenu'> <!-- Submenu --> <a tabindex='-1' href='#'>Plugins</a> <ul class='dropdown-menu'> <li><a href='plugins_overview.html'>overview</a></li> <li><a href='plugins_extensions.html'>extension points</a></li> </ul></li> <!-- End Submenu --> <li class='divider'></li> <li><a href='federation.html'>federation</a></li> <li class='divider'></li> <li><a href='properties.html'>settings</a></li> <li><a href='faq.html'>faq</a></li> <li class='divider'></li> <li><a href='design.html'>design</a></li> <li><a href='rpc.html'>rpc</a></li> </ul></li> <!-- End Menu --> <li class='dropdown'> <!-- Menu --> <a class='dropdown-toggle' href='#' data-toggle='dropdown'>releases<b class='caret'></b></a> <ul class='dropdown-menu'> <li><a href='releasenotes.html'>release notes</a></li> <li><a href='releases.html'>release history</a></li> </ul></li> <!-- End Menu --> <li class='dropdown'> <!-- Menu --> <a class='dropdown-toggle' href='#' data-toggle='dropdown'>downloads<b class='caret'></b></a> <ul class='dropdown-menu'> <li><a href='https://github.com/gitblit/gitblit/releases/download/v1.9.3/gitblit-1.9.3.zip'>Gitblit GO (Windows)</a></li> <li><a href='https://github.com/gitblit/gitblit/releases/download/v1.9.3/gitblit-1.9.3.tar.gz'>Gitblit GO (Linux/OSX)</a></li> <li><a href='https://github.com/gitblit/gitblit/releases/download/v1.9.3/gitblit-1.9.3.war'>Gitblit WAR</a></li> <li class='divider'></li> <li><a href='https://hub.docker.com/r/gitblit/gitblit'>Gitblit GO (Docker)</a></li> <li class='divider'></li> <li><a href='http://plugins.gitblit.com'>Plugins Registry</a></li> <li class='divider'></li> <li><a href='https://github.com/gitblit/gitblit/releases/download/v1.9.3/manager-1.9.3.zip'>Gitblit Manager</a></li> <li><a href='https://github.com/gitblit/gitblit/releases/download/v1.9.3/fedclient-1.9.3.zip'>Federation Client</a></li> <li class='divider'></li> <li><a href='https://github.com/gitblit/gitblit/releases/download/v1.9.3/gbapi-1.9.3.zip'>API Library</a></li> <li class='divider'></li> <li><a href='https://github.com/gitblit/gitblit/releases'>GitHub (1.9.0+)</a></li> <li><a href='https://cloudsmith.io/~gitblit/repos/gitblit/groups/'>Cloudsmith (1.3.0-1.8.0)</a></li> <li class='divider'></li> <li><a href='http://gitblit.github.io/gitblit-maven'>Maven Repository</a></li> </ul></li> <!-- End Menu --> <li class='dropdown'> <!-- Menu --> <a class='dropdown-toggle' href='#' data-toggle='dropdown'>links<b class='caret'></b></a> <ul class='dropdown-menu'> <li><a href='https://dev.gitblit.com'>dev.gitblit.com (self-hosted)</a></li> <li class='divider'></li> <li><a href='http://plugins.gitblit.com'>Plugins Registry</a></li> <li class='divider'></li> <li><a href='https://github.com/gitblit/gitblit'>Github</a></li> <li><a href='https://github.com/gitblit/gitblit'>Issues</a></li> <li><a href='http://groups.google.com/group/gitblit'>Discussion</a></li> <li><a href='https://twitter.com/gitblit'>Twitter</a></li> <li><a href='https://www.openhub.net/p/gitblit'>OpenHub</a></li> <li class='divider'></li> <li><a href='https://vimeo.com/86164723'>Gitblit Tickets screencast</a></li> <li><a href='https://asciinema.org/a/9342'>Gitblit SSH and Plugin Management asciicast</a></li> <li><a href='http://episodes.gitminutes.com/2014/05/gitminutes-29-james-moger-on-gitblit.html'>GitMinutes #29: James Moger on Gitblit</a></li> <li class='divider'></li> <li><a href='https://twitter.com/JamesMoger'>@JamesMoger</a></li> </ul></li> <!-- End Menu --> <li class='divider-vertical'></li> </ul> </div><!--/.nav-collapse --> </div> </div> </div><!-- end Navigation Bar --> <div class='container'> <!-- Begin Markdown --> <h2 class="section" id='H1'><a href="#H1" class="sectionlink"><i class="icon-share-alt"> </i></a>Gitblit as a Viewer</h2><p>Gitblit is designed to be a complete Git server solution, however you may already have a Git serving solution such as ssh+gitolite or Gerrit. For these scenarios, you may configure Gitblit to be just a repository viewer.</p> <h3 class="section" id='H2'><a href="#H2" class="sectionlink"><i class="icon-share-alt"> </i></a>Lock-down your Viewer</h3><p>Here is an example configuration that disables all administration, all Git serving features, and requires an authenticated user to view anything.</p> <pre><code>git.repositoriesFolder = ${baseFolder}/git git.cacheRepositoryList = true git.searchRepositoriesSubfolders = true git.searchRecursionDepth = -1 git.searchExclusions = git.daemonPort = 0 git.enableGitServlet = false git.enableGarbageCollection = false git.defaultAccessRestriction = VIEW web.authenticateViewPages = true web.allowAdministration = false web.enableRpcServlet = false web.enableRpcManagement = false web.enableRpcAdministration = false web.allowForking = false </code></pre> <h3 class="section" id='H3'><a href="#H3" class="sectionlink"><i class="icon-share-alt"> </i></a>Tomcat or Reverse-Proxy Servers</h3><p>If you are running Gitblit on a Tomcat-based container you will likely run into forward-slash character troubles.</p><p>To resolve this either set:</p> <pre><code>web.mountParameters = false </code></pre><p>or</p> <pre><code>web.forwardSlashCharacter = ! </code></pre> <h3 class="section" id='H4'><a href="#H4" class="sectionlink"><i class="icon-share-alt"> </i></a>Advertised Repository Urls</h3><p>You may also want to advertise repository urls for your other Git serving solution from Gitblit.</p> <ul> <li><em>{0}</em> is the token for the repository name</li> <li><em>{1}</em> is the token for the username</li> </ul><p>The username is only practical if you have setup the account names for your other git serving solution to match the Gitblit account.</p> <pre><code>web.otherUrls = ssh://localhost/git/{0} git://localhost:29418/git/{0} https://{1}@localhost/r/{0} </code></pre> <!-- End Markdown --> <footer class="footer"><p class="pull-right">generated 2022-04-09</p> <p>The content of this page is licensed under the <a href="http://creativecommons.org/licenses/by/3.0">Creative Commons Attribution 3.0 License</a>.</p> </footer> </div> <!-- Google Analytics --> <script type="text/javascript"> var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-24377072-1']); _gaq.push(['_trackPageview']); (function() { var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); })(); </script> </body> </html>