From 716745e2dd9b3925b1229433e7072580206f731e Mon Sep 17 00:00:00 2001 From: James Moger Date: Wed, 8 Jun 2011 17:38:11 -0400 Subject: Stubbed out Blame. Added Github banner to site. Documentation. --- README.MKD | 2 +- distrib/installService.cmd | 2 +- distrib/installService64.cmd | 2 +- distrib/users.properties | 2 +- docs/00_index.mkd | 37 ++++++--- docs/01_faq.mkd | 17 +++-- docs/page_header.html | 3 +- src/com/gitblit/wicket/GitBlitWebApp.java | 4 +- src/com/gitblit/wicket/pages/BlamePage.html | 39 ++++++++++ src/com/gitblit/wicket/pages/BlamePage.java | 97 ++++++++++++++++++++++++ src/com/gitblit/wicket/pages/BlobDiffPage.html | 2 +- src/com/gitblit/wicket/pages/BlobDiffPage.java | 3 +- src/com/gitblit/wicket/pages/BlobPage.html | 2 +- src/com/gitblit/wicket/pages/BlobPage.java | 6 +- src/com/gitblit/wicket/pages/CommitDiffPage.java | 5 +- src/com/gitblit/wicket/pages/CommitPage.java | 22 +++--- src/com/gitblit/wicket/pages/SummaryPage.java | 3 +- src/com/gitblit/wicket/pages/TreePage.java | 5 +- src/com/gitblit/wicket/resources/gitblit.css | 2 +- 19 files changed, 214 insertions(+), 41 deletions(-) create mode 100644 src/com/gitblit/wicket/pages/BlamePage.html create mode 100644 src/com/gitblit/wicket/pages/BlamePage.java diff --git a/README.MKD b/README.MKD index 2a94730f..bb272b38 100644 --- a/README.MKD +++ b/README.MKD @@ -8,7 +8,7 @@ License ------- Gitblit is distributed under the terms of the Apache Software Foundation -license, version 2.0. The text is included in the file LICENSE in the root +license, version 2.0. The text of the license is included in the file LICENSE in the root of the project. Java/Application server requirements diff --git a/distrib/installService.cmd b/distrib/installService.cmd index 0d181e13..093c8773 100644 --- a/distrib/installService.cmd +++ b/distrib/installService.cmd @@ -1,2 +1,2 @@ -set JVM=C:\Program Files\Java\JVM1.6.0_21 +set JVM=C:\Program Files\Java\jdk1.6.0_26 JavaService.exe -install gitblit "%JVM%\jre\bin\server\jvm.dll" -Xmx1024M -Djava.class.path=%CD%\gitblit.jar;"%JVM%\lib\tools.jar" -start com.gitblit.Launcher -params --storePassword dosomegit -stop com.gitblit.Launcher -params --stop -out %CD%\logs\stdout.log -err %CD%\logs\stderr.log -current %CD% \ No newline at end of file diff --git a/distrib/installService64.cmd b/distrib/installService64.cmd index 10a34443..42d2ca5a 100644 --- a/distrib/installService64.cmd +++ b/distrib/installService64.cmd @@ -1,2 +1,2 @@ -set JVM=C:\Program Files\Java\JVM1.6.0_21 +set JVM=C:\Program Files\Java\jdk1.6.0_26 JavaService64.exe -install gitblit "%JVM%\jre\bin\server\jvm.dll" -Djava.class.path=%CD%\gitblit.jar;"%JVM%\lib\tools.jar" -start com.gitblit.Launcher -params --storePassword dosomegit -stop com.gitblit.Launcher -params --stop -out %CD%\logs\stdout.log -err %CD%\logs\stderr.log -current %CD% \ No newline at end of file diff --git a/distrib/users.properties b/distrib/users.properties index f3e50752..56142dfa 100644 --- a/distrib/users.properties +++ b/distrib/users.properties @@ -1,3 +1,3 @@ ## Git:Blit realm file format: username=password,\#permission,repository1,repository2... -#Sat Jun 04 14:21:04 EDT 2011 +#Tue Jun 07 20:57:42 EDT 2011 admin=admin,\#admin diff --git a/docs/00_index.mkd b/docs/00_index.mkd index d1331636..2f15b38c 100644 --- a/docs/00_index.mkd +++ b/docs/00_index.mkd @@ -31,9 +31,11 @@ sources @ [Github][gitbltsrc] - Repository Owners may edit repositories through the web UI - Automatically generates a self-signed certificate for https communications - Git-notes support -- Branch-selectable metrics +- Branch metrics +- Blame annotations view - Dates can optionally be displayed using the browser's reported timezone - Author and Committer email address display can be controlled +- Search commit messages, authors, and committers - Dynamic zip downloads feature - Markdown view support - Syntax highlighting @@ -48,27 +50,37 @@ sources @ [Github][gitbltsrc] ### Limitations +- [%JGIT%][jgit] does not [garbage collect or repack](http://www.kernel.org/pub/software/scm/git/docs/git-gc.html) - 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 - Gitblit is an integrated, full-stack solution. There is no WAR build at this time. +### Caveats +- I don't know everything there is to know about [Git][git] nor [JGit][jgit]. +- Gitblit may eat your data. Use at your own risk. +- Gitblit may have security holes. Patches welcome. :) + ### Todo List - Code documentation - Unit testing -- Blame +- Finish Blame (waiting for JGit 1.0.0 release) - Clone remote repository ### Idea List -- Ticgit activity/timeline -- Ticgit query feature with paging support -- Ticgit ticket change history -- View images on Blob page -- View other binary files on Blob page +- Consider [Apache Shiro](http://shiro.apache.org) for authentication +- Stronger Ticgit read-only integration + - activity/timeline + - query feature with paging support + - change history +- Ticgit write integration +- Blob page improvements + - view images + - view other binary files (pdf, doc, etc) - Markdown editing feature ### License -Licensed under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0) +Gitblit is distributed under the terms of the [Apache Software Foundation license, version 2.0][apachelicense] ### Inspirations - [Gitweb](http://www.git-scm.com) @@ -123,6 +135,13 @@ Additionally, [Google CodePro AnalytiX](http://code.google.com/javadevtools), [e - 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. + +## Contributing +Patches welcome in any form. + +Contributions must be your own original work and must licensed under the [Apache License, Version 2.0][apachelicense], the same license used by Gitblit. + [jgit]: http://eclipse.org/jgit "Eclipse JGit Site" [git]: http://git-scm.com "Official Git Site" -[gitbltsrc]: http://somewhere.com "gitblit git repository" \ No newline at end of file +[gitbltsrc]: http://somewhere.com "gitblit git repository" +[apachelicense]: http://www.apache.org/licenses/LICENSE-2.0 "Apache License, Version 2.0" \ No newline at end of file diff --git a/docs/01_faq.mkd b/docs/01_faq.mkd index a80e4e29..e6760ced 100644 --- a/docs/01_faq.mkd +++ b/docs/01_faq.mkd @@ -36,9 +36,8 @@ Gitblit is not meant to be a social coding resource like [Github](http://github. As a Java developer I prefer that as much of my tooling as possible is Java.
Originally, I was going to use [Mercurial](http://mercurial.selenic.com) but... -- MercurialEclipse [shells to Python and captures System.in](http://mercurial.808500.n3.nabble.com/Hg4J-Mercurial-pure-Java-library-tp2693090p2694555.html)
+- MercurialEclipse [shells to Python, writes to System.out, and captures System.in](http://mercurial.808500.n3.nabble.com/Hg4J-Mercurial-pure-Java-library-tp2693090p2694555.html)
Parsing command-line output is fragile and suboptimal.
Unfortunately this is necessary because Mercurial is an application, not a library. -- Mercurial seems to [frown](http://mercurial.808500.n3.nabble.com/Hg4J-Mercurial-pure-Java-library-tp2693090p2695051.html) on the fledgling [Hg4j][hg4j] (pure Java Mercurial) project. - Mercurial HTTP/HTTPS needs to run as CGI through Apache/IIS/etc, as mod_python through Apache, or served with a built-in http server.
This requires setup and maintenance of multiple, mixed 3rd party components. @@ -48,6 +47,13 @@ Gitblit eliminates all that complication with its 100% Java stack and simple sin No. Gitblit is based on [JGit][jgit] which is a pure Java implementation of the [Git version control system][git].
Everything you need for Gitblit is either in the zip distribution file or automatically downloaded on execution. +### What about periodic Git garbage collection (git-gc)? +Good question. I'm not sure. + +Git repositories grow and grow and periodically need to be repacked every once in a while. Git calls this process [garbage collection](http://www.kernel.org/pub/software/scm/git/docs/git-gc.html) (which is not to be confused with [garbage collection](http://en.wikipedia.org/wiki/Garbage_collection_(computer_science)).) + +[JGit's][jgit] documentation is sparse and its unclear whether or not JGit performs this function. + ### Can I run Gitblit in conjunction with my existing Git tooling? Yes. You can configure Gitblit to only be a repository viewer. @@ -72,7 +78,7 @@ Gitblit's simple authentication and authorization mechanism can be used to facil ### Why doesn't Gitblit support SSH? Gitblit could integrate [Apache Mina][mina] to provide SSH access. However, doing so violates Gitblit's first design principle: [KISS](http://en.wikipedia.org/wiki/KISS_principle).
-SSH support requires creating, exchanging, and managing SSH keys. While this is possible, JGit's SmartHTTP implementation is a simpler and universal transport mechanism. +SSH support requires creating, exchanging, and managing SSH keys (arguably not more complicated than managing users). While this is possible, JGit's SmartHTTP implementation is a simpler and universal transport mechanism. 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). @@ -86,8 +92,9 @@ To search by *author* or *committer* use the following syntax in the search box: Alternatively, you could enable the search type dropdown list in your `gitblit.properties` file. -### I see a disabled "blame" link. How do I enable it? -Currently blame is not implemented. Those links are placeholders to remind me where Gitweb offers blame. +### Can Gitblit be translated? + +Yes. Most messages are localized to a standard Java properties file. [bitblt]: http://en.wikipedia.org/wiki/Bit_blit "Wikipedia Bitblt" [jgit]: http://eclipse.org/jgit "Eclipse JGit Site" diff --git a/docs/page_header.html b/docs/page_header.html index 4a2128e0..7b8f63d5 100644 --- a/docs/page_header.html +++ b/docs/page_header.html @@ -28,7 +28,8 @@ - + + Fork me on GitHub