James Moger
2012-07-11 e4547fa58281ca2c64f934457d8377b19f8230c7
Documentation
8 files modified
60 ■■■■ changed files
distrib/gitblit.properties 6 ●●●●● patch | view | raw | blame | history
docs/01_features.mkd 1 ●●●● patch | view | raw | blame | history
docs/01_setup.mkd 8 ●●●● patch | view | raw | blame | history
docs/02_rpc.mkd 2 ●●● patch | view | raw | blame | history
docs/03_faq.mkd 5 ●●●● patch | view | raw | blame | history
docs/04_design.mkd 1 ●●●● patch | view | raw | blame | history
docs/04_releases.mkd 31 ●●●● patch | view | raw | blame | history
docs/05_roadmap.mkd 6 ●●●●● patch | view | raw | blame | history
distrib/gitblit.properties
@@ -56,6 +56,7 @@
# Default on JGit is 8 KiB on all platforms.
#
# Common unit suffixes of k, m, or g are supported.
# Documentation courtesy of the Gerrit project.
#
# SINCE 1.0.0
# RESTART REQUIRED
@@ -72,6 +73,7 @@
# Default on JGit is 10 MiB on all platforms.
#
# Common unit suffixes of k, m, or g are supported.
# Documentation courtesy of the Gerrit project.
#
# SINCE 1.0.0
# RESTART REQUIRED
@@ -85,6 +87,7 @@
# this value.
#
# Common unit suffixes of k, m, or g are supported.
# Documentation courtesy of the Gerrit project.
#
# SINCE 1.0.0
# RESTART REQUIRED
@@ -98,6 +101,7 @@
# available for network sockets and other repository data manipulation.
#
# Default on JGit is 128 file descriptors on all platforms.
# Documentation courtesy of the Gerrit project.
#
# SINCE 1.0.0
# RESTART REQUIRED
@@ -118,6 +122,7 @@
# Default is 50 MiB on all platforms.
#
# Common unit suffixes of k, m, or g are supported.
# Documentation courtesy of the Gerrit project.
#
# SINCE 1.0.0
# RESTART REQUIRED
@@ -134,6 +139,7 @@
#
# Default on JGit is false. Although potentially slower, it yields much more
# predictable behavior.
# Documentation courtesy of the Gerrit project.
#
# SINCE 1.0.0
# RESTART REQUIRED
docs/01_features.mkd
@@ -11,6 +11,7 @@
- RSS/JSON RPC interface
- Java/Swing Gitblit Manager tool 
- Gitweb inspired web UI
- Responsive web UI that subtracts elements to be usable on phones, tablets, and desktop browsers
- Groovy pre- and post- push hook scripts, per-repository or globally for all repositories
- Email push notifications *(via sendmail.groovy push script)*
- Lucene indexing of specified repository branches
docs/01_setup.mkd
@@ -8,7 +8,10 @@
Open `web.xml` in your favorite text editor and make sure to review and set:
    - <context-parameter> *git.repositoryFolder* (set the full path to your repositories folder)
    - <context-parameter> *groovy.scriptsFolder* (set the full path to your Groovy hook scripts folder)
    - <context-parameter> *groovy.grapeFolder* (set the full path to your Groovy Grape artifact cache)
    - <context-parameter> *realm.userService* (set the full path to `users.conf`)
    - <context-parameter> *git.packedGitLimit* (set larger than the size of your largest repository)
    - <context-parameter> *git.streamFileThreshold* (set larger than the size of your largest committed file)
5. You may have to restart your servlet container. 
6. Open your browser to <http://localhost/gitblit> or whatever the url should be.
7. Enter the default administrator credentials: **admin / admin** and click the *Login* button  
@@ -22,10 +25,13 @@
Open `gitblit.properties` in your favorite text editor and make sure to review and set:
    - *git.repositoryFolder* (path may be relative or absolute)
    - *groovy.scriptsFolder* (path may be relative or absolute)
    - *groovy.grapeFolder* (path may be relative or absolute)
    - *server.tempFolder* (path may be relative or absolute)
    - *server.httpPort* and *server.httpsPort*
    - *server.httpBindInterface* and *server.httpsBindInterface*  
    **https** is strongly recommended because passwords are insecurely transmitted form your browser/git client using Basic authentication!
    - *git.packedGitLimit* (set larger than the size of your largest repository)
    - *git.streamFileThreshold* (set larger than the size of your largest committed file)
3. Execute `gitblit.cmd` or `java -jar gitblit.jar` from a command-line
4. Wait a minute or two while all dependencies are downloaded and your self-signed *localhost* certificate is generated.  
    Please see the section titled **Creating your own Self-Signed Certificate** to generate a certificate for *your hostname*.
@@ -404,7 +410,7 @@
[Grape](http://groovy.codehaus.org/Grape) lets you quickly add maven repository dependencies to your Groovy hook script.  
<blockquote>Grape (The Groovy Adaptable Packaging Engine or Groovy Advanced Packaging Engine) is the infrastructure enabling the grab() calls in Groovy, a set of classes leveraging [Ivy](http://ant.apache.org/ivy) to allow for a repository driven module system for Groovy. This allows a developer to write a script with an essentially arbitrary library requirement, and ship just the script. Grape will, at runtime, download as needed and link the named libraries and all dependencies forming a transitive closure when the script is run from existing repositories such as Ibiblio, Codehaus, and java.net.</blockquote>
<blockquote>Grape (The Groovy Adaptable Packaging Engine or Groovy Advanced Packaging Engine) is the infrastructure enabling the grab() calls in Groovy, a set of classes leveraging <a href="http://ant.apache.org/ivy">Ivy</a> to allow for a repository driven module system for Groovy. This allows a developer to write a script with an essentially arbitrary library requirement, and ship just the script. Grape will, at runtime, download as needed and link the named libraries and all dependencies forming a transitive closure when the script is run from existing repositories such as Ibiblio, Codehaus, and java.net.</blockquote>
%BEGINCODE%
// create and use a primitive array
docs/02_rpc.mkd
@@ -63,7 +63,7 @@
<tr><th>Release</th><th>Protocol Version</th></tr>
<tr><td>Gitblit v0.7.0</td><td>1 (inferred version)</td></tr>
<tr><td>Gitblit v0.8.0</td><td>2</td></tr>
<tr><td>Gitblit v0.9.0</td><td>3</td></tr>
<tr><td>Gitblit v0.9.0+</td><td>3</td></tr>
</tbody>
</table>
docs/03_faq.mkd
@@ -138,7 +138,10 @@
You might consider running [Gerrit](http://gerrit.googlecode.org) which does integrate [Apache Mina][mina] and supports SSH or you might consider serving [Git][git] on Linux which would offer real SSH support and also allow use of [many other compelling Git solutions](https://git.wiki.kernel.org/index.php/InterfacesFrontendsAndTools).
### What types of Search does Gitblit support?
Gitblit supports case-insensitive searches of *commit message* (default), *author*, and *committer*.<br/>
As of 0.9.0, Gitblit supports Lucene-based searching.
If Lucene indexing is disabled, Gitblit falls back to brute-force commit-traversal search.  Commit-traversal search supports case-insensitive searching of *commit message* (default), *author*, and *committer*.<br/>
To search by *author* or *committer* use the following syntax in the search box:
docs/04_design.mkd
@@ -40,6 +40,7 @@
- [Groovy](http://groovy.codehaus.org) (Apache 2.0)
- [Lucene](http://lucene.apache.org) (Apache 2.0)
- [UnboundID](http://www.unboundid.com) (LGPL 2.1)
- [Ivy](http://ant.apache.org/ivy) (Apache 2.0)
### Other Build Dependencies
- [Fancybox image viewer](http://fancybox.net) (MIT and GPL dual-licensed)
docs/04_releases.mkd
@@ -17,14 +17,16 @@
- **Updated Lucene index version which will force a rebuild of ALL your Lucene indexes**  
Make sure to properly set *web.blobEncodings* before starting Gitblit if you are updating!  (issue 97)
- Changed default layout for web ui from fixed-width layout to responsive (issue 101)  
- IUserService interface has changed to better accomodate custom authentication and/or custom authorization
- IUserService interface has changed to better accomodate custom authentication and/or custom authorization
    The default `users.conf` now supports persisting display names and email addresses.
- Updated Japanese translation (Github/zakki)
#### additions
- Added setting to allow specification of a robots.txt file (issue 99)  
    **New:** *web.robots.txt = *
- Added setting to control responsive or fixed-width layout (issue 101)
    **New:** *web.robots.txt =*
- Added setting to control Responsive or Fixed-Width layout (issue 101)
    Responsive layout is now the default.  This layout gracefully scales the web ui from desktop browser form-factors to phone browser form-factors by hiding page components.
    **New:** *web.useResponsiveLayout = true*  
- Added setting to control charsets for blob string decoding.  Default encodings are UTF-8, ISO-8859-1, and server's default charset. (issue 97)  
    **New:** *web.blobEncodings = UTF-8 ISO-8859-1*  
@@ -37,7 +39,8 @@
    **New:** *git.packedGitMmap = false*  
- Added default access restriction.  Applies to new repositories and repositories that have not been configured with Gitblit. (issue 88)  
    **New:** *git.defaultAccessRestriction = NONE*  
- Added setting to control Groovy Grape root folder.  [Grape](http://groovy.codehaus.org/Grape) allows you to add Maven dependencies to your pre-/post-receive hook script classpath.
- Added setting to control Groovy Grape root folder.
    [Grape](http://groovy.codehaus.org/Grape) allows you to add Maven dependencies to your pre-/post-receive hook script classpath.
    **New:** *groovy.grapeFolder = groovy/grape*  
- Added LDAP User Service with many new *realm.ldap* keys (Github/jcrygier)
- Added support for custom repository properties for Groovy hooks (Github/jcrygier)
@@ -48,8 +51,18 @@
#### dependency changes
- updated to Bootstrap 2.0.4
- added Ivy 2.2.0 (for Grape support in Groovy hook scripts)
- updated to JGit 2.0.0.201206130900-r
- updated to Groovy 1.8.6
- updated to Gson 1.7.2
- updated to Log4J 1.2.17
- updated to SLF4J 1.6.6
- updated to JCommander 1.27
- updated to Apache Commons Daemon 1.0.10
- added Ivy 2.2.0
<hr/>
### Older Releases
**0.9.3** *released 2012-04-11*
@@ -57,6 +70,8 @@
- Fixed bug where you could not remove all selections from a RepositoryModel list (permitted users, permitted teams, hook scripts, federation sets, etc) (issue 81)
- Automatically set *java.awt.headless=true* for Gitblit GO
<hr/>
**0.9.2** *released 2012-04-04*
@@ -71,11 +86,15 @@
- Fixed Centos service script (Github/mohamedmansour)
- Fixed EditRepositoryPage for IE8; missing save button (issue 80, Github/jonnybbb)
<hr/>
**0.9.1** *released 2012-03-27*
#### fixes
- Lucene folder was stored in working copy instead of in .git folder
<hr/>
**0.9.0** *released 2012-03-27*
@@ -139,8 +158,6 @@
- updated to Wicket 1.4.20
<hr/>
### Older Releases
**0.8.2** ([go](http://code.google.com/p/gitblit/downloads/detail?name=gitblit-0.8.2.zip) | [war](http://code.google.com/p/gitblit/downloads/detail?name=gitblit-0.8.2.war) | [express](http://code.google.com/p/gitblit/downloads/detail?name=express-0.8.2.zip) | [fedclient](http://code.google.com/p/gitblit/downloads/detail?name=fedclient-0.8.2.zip) | [manager](http://code.google.com/p/gitblit/downloads/detail?name=manager-0.8.2.zip) | [api](http://code.google.com/p/gitblit/downloads/detail?name=gbapi-0.8.2.zip)) based on [JGit 1.2.0 (201112221803-r)][jgit] &nbsp; *released 2012-01-13*
docs/05_roadmap.mkd
@@ -22,12 +22,6 @@
    * optional automatic push to origin/remotes?
    * optional manual push to origin/remotes?
* Gitblit: Repository regex substitutions should be stored in .git/.config, not gitblit.properties
* Gitblit: Consider allowing git:// protocol using JGit
    * new setting *git.allowGitProtocol* to enable/disable git:// protocol
    * unrestricted repositories would have anonymous RW git:// access
    * push-restricted repositories would have anonymous R git:// access
    * clone-restricted repositories would prohibit git:// access
    * view-restricted repositories would prohibit git:// access
### IDEAS