From e4547fa58281ca2c64f934457d8377b19f8230c7 Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Wed, 11 Jul 2012 17:21:00 -0400
Subject: [PATCH] Documentation

---
 docs/01_features.mkd       |    1 +
 docs/01_setup.mkd          |    8 +++++++-
 docs/02_rpc.mkd            |    2 +-
 docs/04_releases.mkd       |   31 ++++++++++++++++++++++++-------
 docs/04_design.mkd         |    1 +
 distrib/gitblit.properties |    6 ++++++
 docs/03_faq.mkd            |    5 ++++-
 docs/05_roadmap.mkd        |    6 ------
 8 files changed, 44 insertions(+), 16 deletions(-)

diff --git a/distrib/gitblit.properties b/distrib/gitblit.properties
index f3e2ac1..4c4372e 100644
--- a/distrib/gitblit.properties
+++ b/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
diff --git a/docs/01_features.mkd b/docs/01_features.mkd
index 667a09c..b8b0ed7 100644
--- a/docs/01_features.mkd
+++ b/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
diff --git a/docs/01_setup.mkd b/docs/01_setup.mkd
index 07f4b00..6d6f727 100644
--- a/docs/01_setup.mkd
+++ b/docs/01_setup.mkd
@@ -8,7 +8,10 @@
 Open `web.xml` in your favorite text editor and make sure to review and set:
     - &lt;context-parameter&gt; *git.repositoryFolder* (set the full path to your repositories folder)
     - &lt;context-parameter&gt; *groovy.scriptsFolder* (set the full path to your Groovy hook scripts folder)
+    - &lt;context-parameter&gt; *groovy.grapeFolder* (set the full path to your Groovy Grape artifact cache)
     - &lt;context-parameter&gt; *realm.userService* (set the full path to `users.conf`)
+    - &lt;context-parameter&gt; *git.packedGitLimit* (set larger than the size of your largest repository)
+    - &lt;context-parameter&gt; *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
diff --git a/docs/02_rpc.mkd b/docs/02_rpc.mkd
index 98a73e5..8aa84f5 100644
--- a/docs/02_rpc.mkd
+++ b/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>
 
diff --git a/docs/03_faq.mkd b/docs/03_faq.mkd
index 6831f42..36be82b 100644
--- a/docs/03_faq.mkd
+++ b/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:
 
diff --git a/docs/04_design.mkd b/docs/04_design.mkd
index d1583cd..ce83f4d 100644
--- a/docs/04_design.mkd
+++ b/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)
diff --git a/docs/04_releases.mkd b/docs/04_releases.mkd
index 40f3194..f24c6a1 100644
--- a/docs/04_releases.mkd
+++ b/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*
 
diff --git a/docs/05_roadmap.mkd b/docs/05_roadmap.mkd
index 6c0cea5..3d593a0 100644
--- a/docs/05_roadmap.mkd
+++ b/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
 

--
Gitblit v1.9.1