Git:Blit is an open-source, integrated pure Java stack for managing, viewing, and serving [Git][git] repositories.\r
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.\r
\r
-### Current Version\r
+### Current Release\r
\r
[%VERSION%](http://gitblit.com/%DISTRIBUTION%) based on [%JGIT%][jgit] (*%BUILDDATE%*)\r
\r
</ul>\r
- Gitweb inspired UI\r
- Administrators may create, edit, rename, or delete repositories through the web UI\r
-- Administrators may create, edit, or delete users through the web UI\r
+- Administrators may create, edit, rename, or delete users through the web UI\r
- Repository Owners may edit repositories through the web UI\r
- Automatically generates a self-signed certificate for https communications\r
-- Dates can optionally be displayed using the browser''s reported timezone\r
+- Dates can optionally be displayed using the browser's reported timezone\r
- Author and Committer email address display can be controlled\r
+- Realtime zip downloads feature\r
- Markdown view support\r
- Syntax highlighting\r
- Customizable regular expression handling for commit messages\r
- users.properties access\r
- available repositories\r
- etc\r
-- Download zip feature\r
- Site documentation\r
- Code documentation\r
- Unit testing\r
- View images on Blob page\r
- View other binary files on Blob page\r
- Markdown editing feature\r
-- Blame feature (waiting for the [JGit][jgit] team to do the hard part)\r
+- Blame (waiting for the [JGit][jgit] team to do the hard part)\r
\r
### License\r
TBD\r
Whitespace is illegal.\r
\r
#### Passwords\r
-User passwords are CASE-SENSITIVE and may be *plain*, *md5*, or *crypt* formatted (see `gitblit.properties` -> *realm.passwordStorage*).\r
+User passwords are CASE-SENSITIVE and may be *plain* or *md5* formatted (see `gitblit.properties` -> *realm.passwordStorage*).\r
\r
#### User Roles\r
There is only one actual *role* in Git:Blit and that is *#admin* which grants administrative powers to that user. Administrators automatically have access to all repositories. All other *roles* are repository names. If a repository is access-restricted, the user must have the repository's name within his/her roles to bypass the access restriction. This is how users are granted access to a restricted repository.\r
### I want to deploy Git:Blit into my own servlet container. Where is the WAR?\r
At this time there is no WAR build available.\r
\r
+### Can I restrict access to paths within a repository?\r
+No. Access restrictions apply to the repository as a whole.\r
+\r
+Git:Blit's simple authentication and authorization mechanism can be used to facilitate one or more of the [workflows outlined here](http://progit.org/book/ch5-1.html). Should you require more fine-grained access controls you might consider using [gitolite](https://github.com/sitaramc/gitolite).\r
+\r
### Why doesn't Git:Blit support SSH?\r
Git:Blit could integrate [Apache Mina][mina] to provide SSH access. However, doing so violates Git:Blit's first design principle: [KISS](http://en.wikipedia.org/wiki/KISS_principle).<br/>\r
-SSH supports requires creating, exchanging, and managing SSH keys. While this is doable, its not simple like JGit's SmartHTTP implementation.\r
+SSH support requires creating, exchanging, and managing SSH keys. While this is possible, JGit's SmartHTTP implementation is a simpler and cleaner transport mechanism.\r
\r
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).\r
\r
\r
### How do I run Git:Blit on port 80 or 443 in Linux?\r
Linux requires root permissions to serve on ports < 1024.<br/>\r
-Run the server as *root* (security concern) or change the ports you are serving to 8080 (http) or 8443 (https). \r
+Run the server as *root* (security concern) or change the ports you are serving to 8080 (http) and/or 8443 (https). \r
\r
[bitblt]: http://en.wikipedia.org/wiki/Bit_blit "Wikipedia Bitblt"\r
[jgit]: http://eclipse.org/jgit "Eclipse JGit Site"\r