Gitblit is an open source, pure Java Git solution for managing, viewing, and serving [Git](http://git-scm.com) repositories.\r
More information about Gitblit can be found [here](http://gitblit.com).\r
\r
+[ ![Download](https://api.bintray.com/packages/gitblit/releases/stable/images/download.png) ](https://bintray.com/gitblit/releases/stable/_latestVersion)\r
+\r
License\r
-------\r
\r
<property name="maven.directory" value="${basedir}/../gitblit-maven" />\r
\r
<!-- Download links -->\r
- <property name="gc.url" value="http://dl.bintray.com/jamesmoger/generic/" />\r
+ <property name="gc.url" value="http://dl.bintray.com/gitblit/releases/" />\r
</target>\r
\r
\r
<divider />\r
<link name="API Library" src="${gc.url}gbapi-${project.releaseVersion}.zip" />\r
<divider />\r
- <link name="Bintray (1.4.0+)" src="https://bintray.com/jamesmoger/generic/Gitblit" />\r
+ <link name="Bintray (1.4.0+)" src="https://bintray.com/gitblit/releases/gitblit" />\r
<link name="GoogleCode (pre-1.4.0)" src="https://code.google.com/p/gitblit/downloads/list?can=1" />\r
<divider />\r
<link name="Maven Repository" src="${project.mavenUrl}" />\r
</menu>\r
\r
<menu name="links">\r
- <link name="Gitblit Demo (RELEASE)" src="https://demo-gitblit.rhcloud.com" />\r
- <link name="Gitblit Next (SNAPSHOT)" src="https://next-gitblit.rhcloud.com" />\r
- <divider />\r
- <link name="Gitblit (Self-Hosted)" src="https://dev.gitblit.com" />\r
+ <link name="dev.gitblit.com (self-hosted)" src="https://dev.gitblit.com" />\r
<divider />\r
<link name="Plugin Registry" src="http://plugins.gitblit.com" />\r
<divider />\r
<page name="older releases" src="releasehistory.mkd" />\r
</menu>\r
<menu name="links">\r
- <link name="Gitblit Demo (RELEASE)" src="https://demo-gitblit.rhcloud.com" />\r
- <link name="Gitbilt Next (SNAPSHOT)" src="https://next-gitblit.rhcloud.com" />\r
+ <link name="dev.gitblit.com (self-hosted)" src="https://dev.gitblit.com" />\r
<divider />\r
<link name="Plugin Registry" src="http://plugins.gitblit.com" />\r
<divider />\r
## Troubleshooting\r
\r
+### push failed for branch (n/a (unpacker error))\r
+\r
+This is a bug in JGit (issue-408). TLDR: Newer git clients are optimized to send less data on the wire. JGit expects complete data to be sent, but there are scenarios where native git can optimize-out sending objects. By default, JGit requires everything sent be complete and referenceable.\r
+\r
+If you experience this, the workaround is to temporarily disable the reachable check for the receive pack, push, and then re-enable the setting.\r
+\r
+ git.checkReferencedObjectsAreReachable = false\r
+\r
### Eclipse/Egit/JGit complains that it "can't open upload pack"?\r
There are a few ways this can occur:\r
\r
2. The server itself is configured through a simple text file.\r
Open `data/gitblit.properties` in your favorite text editor and make sure to review and set:\r
- *server.httpPort* and *server.httpsPort*\r
- - *server.storePassword*\r
+ - *server.storePassword* (do not enter *#* characters)\r
**https** is strongly recommended because passwords are insecurely transmitted form your browser/git client using Basic authentication!\r
- *git.packedGitLimit* (set larger than the size of your largest repository)\r
- *git.streamFileThreshold* (set larger than the size of your largest committed file)\r
\r
If you want to serve your repositories to another machine over https then you will want to generate a new certificate for the hostname or ip address you are serving from.\r
\r
+**NOTE:** The Gitblit Authority is a GUI tool and will require X11 forwarding on headless UNIX boxes.\r
+\r
1. `authority.cmd` or `java -jar authority.jar --baseFolder data`\r
2. Click the *new ssl certificate* button (red rosette in the toolbar in upper left of window)\r
3. Enter the hostname or ip address\r
<div style="padding:5px;"><a style="width:175px;text-decoration:none;" class="btn btn-danger" href="%GCURL%gitblit-${project.releaseVersion}.war">Download Gitblit WAR</a></div>\r
<div style="padding:5px;"><a style="width:175px;text-decoration:none;" class="btn btn-info" href="%GCURL%express-${project.releaseVersion}.zip">Download Gitblit Express</a></div>\r
<div style="padding:5px;"><a style="width:175px;text-decoration:none;" class="btn btn-primary" href="%GCURL%manager-${project.releaseVersion}.zip">Download Gitblit Manager</a></div>\r
- <a href="screenshots.html" title="Screenshots"><img style="margin-top:5px;border:1px solid #ccc;" src="thumbs/00.png" alt="Screenshots" /></a>\r
+ <a href='https://bintray.com/gitblit/releases/stable/view?source=watch' alt='Get automatic notifications about new "stable" versions'><img src='https://www.bintray.com/docs/images/bintray_badge_color.png'></a>\r
</div>\r
\r
<div style="padding-top:5px;">\r
Gitblit is an open-source, pure Java stack for managing, viewing, and serving [Git][git] repositories. \r
It's designed primarily as a tool for small workgroups who want to host centralized repositories.\r
\r
-You can browse the [stable demo site](https://demo-gitblit.rhcloud.com) or the [snapshot demo site](https://next-gitblit.rhcloud.com), both are hosted on [RedHat's OpenShift][rhcloud] cloud service.\r
-\r
### GO: Single-Stack Solution\r
\r
*Gitblit GO* is an integrated, single-stack solution based on Jetty.\r
\r
This is what you should download if you want to go from zero to Git in less than 5 mins.\r
\r
-All dependencies are bundled.\r
-\r
### WAR: For Your Servlet Container\r
*Gitblit WAR* is what you should download if you already have a servlet container available that you wish to use. Jetty 6/7/8 and Tomcat 6/7 are known to work. Generally, any Servlet 2.5 or Servlet 3.0 container should work.\r
\r
-All dependencies are bundled.\r
-\r
### Express: For the Cloud\r
*Gitblit Express* is a prepared distribution for [RedHat's OpenShift][rhcloud] cloud service.\r
\r
-All dependencies are bundled.\r
-\r
### You decide how to use Gitblit\r
\r
Gitblit can be used as a dumb repository viewer with no administrative controls or user accounts. \r
\r
Administrators can create and manage all repositories, user accounts, and teams from the *Web UI*. \r
Administrators can create and manage all repositories, user accounts, and teams from the *JSON RPC interface* using the [Gitblit Manager](http://code.google.com/p/gitblit/downloads/detail?name=%MANAGER%) or your own custom tooling. \r
+Administrators can create and manage all repositories, user accounts, and teams from the *command-line* using the [Powertools plugin](https://github.com/gitblit/gitblit-powertools-plugin).\r
\r
### Integration with Your Infrastructure\r
\r
+- Extendable by plugins\r
- Groovy push hook scripts\r
- Pluggable user service mechanism\r
- LDAP authentication with optional LDAP-controlled Team memberships\r