From 1f9daef870a8c7a984955166a542628d69012ed5 Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Fri, 27 May 2011 23:37:24 -0400 Subject: [PATCH] Codepro analyze dependencies. Documentation. --- docs/00_index.mkd | 42 ++++++++++++++++++++++++------------------ 1 files changed, 24 insertions(+), 18 deletions(-) diff --git a/docs/00_index.mkd b/docs/00_index.mkd index a43ffdc..9ad1c4e 100644 --- a/docs/00_index.mkd +++ b/docs/00_index.mkd @@ -1,17 +1,17 @@ ## Overview -Git:Blit is an open-source, integrated pure Java stack for managing, viewing, and serving [Git][git] repositories. +Gitblit is an open-source, integrated pure Java stack for managing, viewing, and serving [Git][git] repositories. Its designed primarily as a tool for small workgroups who want to host [Git][git] repositories on a Windows machine. Having said that, it works equally well on any standard Linux distribution. -### Current Version +### Current Release [%VERSION%](http://gitblit.com/%DISTRIBUTION%) based on [%JGIT%][jgit] (*%BUILDDATE%*) sources @ [Github][gitbltsrc] ### Design Principles -1. [KISS](http://en.wikipedia.org/wiki/KISS_principle) +1. [Keep It Simple, Stupid](http://en.wikipedia.org/wiki/KISS_principle) 2. Offer useful features for serving Git repositories. If feature is complex, refer to #1. -3. All dependencies must be retrievable from a publicly accessible [Maven](http://maven.apache.org) repository.<br/>This is to ensure authenticity of dependencies and to keep the Git:Blit distribution svelte. +3. All dependencies must be retrievable from a publicly accessible [Maven](http://maven.apache.org) repository.<br/>This is to ensure authenticity of dependencies and to keep the Gitblit distribution svelte. ### Features - Out-of-the-box integrated stack requiring minimal configuration @@ -27,11 +27,12 @@ </ul> - Gitweb inspired UI - Administrators may create, edit, rename, or delete repositories through the web UI -- Administrators may create, edit, or delete users through the web UI +- Administrators may create, edit, rename, or delete users through the web UI - Repository Owners may edit repositories through the web UI - Automatically generates a self-signed certificate for https communications -- Dates can optionally be displayed using the browser''s reported timezone +- Dates can optionally be displayed using the browser's reported timezone - Author and Committer email address display can be controlled +- Dynamic zip downloads feature - Markdown view support - Syntax highlighting - Customizable regular expression handling for commit messages @@ -48,16 +49,14 @@ - HTTP/HTTPS are the only supported protocols - Access controls are not path-based, they are repository-based - Only Administrators can create, rename or delete repositories -- Git:Blit is an integrated, full-stack solution. There is no WAR build at this time. +- Gitblit is an integrated, full-stack solution. There is no WAR build at this time. ### Todo List -- Review spots where Git:Blit can cache data instead of abusing the disk +- Review spots where Gitblit can cache data instead of abusing the disk - stats - users.properties access - available repositories - etc -- Download zip feature -- Site documentation - Code documentation - Unit testing @@ -68,10 +67,10 @@ - View images on Blob page - View other binary files on Blob page - Markdown editing feature -- Blame feature (waiting for the [JGit][jgit] team to do the hard part) +- Blame (waiting for the [JGit][jgit] team to do the hard part) ### License -TBD +Licensed under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0) ### Inspirations - [Gitweb](http://www.git-scm.com) @@ -82,7 +81,7 @@  ### Bundled Dependencies -The following dependencies are bundled with the Git:Blit zip distribution file. +The following dependencies are bundled with the Gitblit zip distribution file. - [google-code-prettify](http://code.google.com/p/google-code-prettify) (Apache 2.0) - [JavaService](http://forge.ow2.org/projects/javaservice) (BSD and LGPL) @@ -91,7 +90,7 @@ - other icons courtesy of [FatCow Hosting](http://www.fatcow.com/free-icons) (Creative Commons CC-BY) ### Downloaded Dependencies -The following dependencies are automatically downloaded from the Apache Maven repository and from the Eclipse Maven repository when Git:Blit is launched for the first time. +The following dependencies are automatically downloaded from the Apache Maven repository and from the Eclipse Maven repository when Gitblit is launched for the first time. - [JGit][jgit] (EDL 1.0) - [Wicket](http://wicket.apache.org) (Apache 2.0) @@ -105,9 +104,13 @@ ### Other Build Dependencies - [Fancybox image viewer](http://fancybox.net) (MIT and GPL dual-licensed) +- [JSch - Java Secure Channel](http://www.jcraft.com/jsch) (BSD) +- [JUnit](http://junit.org) (Common Public License) -## Building +## Building from Source [Eclipse](http://eclipse.org) is recommended for development as the project settings are preconfigured. + +Additionally, [Google CodePro AnalytiX](http://code.google.com/javadevtools), [eclipse-cs](http://eclipse-cs.sourceforge.net), [FindBugs](http://findbugs.sourceforge.net), and [EclEmma](http://www.eclemma.org) are recommended development tools. 1. Clone the git repository from [Github][gitbltsrc]. 2. Import the gitblit project into your Eclipse workspace.<br/> @@ -115,9 +118,12 @@ 3. Using Ant, execute the `build.xml` script in the project root.<br/> *This will download all necessary build dependencies and will also generate the Keys class for accessing settings.* 4. Select your gitblit project root and **Refresh** the project, this should correct all build problems. -5. Review the settings in `gitblit.properties` in your project root.<br/> -Make sure you set an appropriate value for *git.repositoriesFolder*. -6. Execute the *com.gitblit.Launcher* class to start Git:Blit. +5. Using JUnit, execute the `com.gitblit.tests.GitBlitSuite` test suite.<br/> +*This will clone some repositories from the web and run through the unit tests.* +5. Review the settings in `gitblit.properties` in your project root. + - By default, the *git.repositoriesFolder* points to the repositories cloned by the test suite.<br/> + - If running on Linux you may have to change the served port(s) to > 1024 unless you are developing as the root user. +6. Execute the *com.gitblit.Launcher* class to start Gitblit. [jgit]: http://eclipse.org/jgit "Eclipse JGit Site" [git]: http://git-scm.com "Official Git Site" -- Gitblit v1.9.1