commit | author | age
|
1f9dae
|
1 |
## Troubleshooting
|
JM |
2 |
|
d39680
|
3 |
### Eclipse/Egit/JGit complains that it "can't open upload pack"?
|
1f9dae
|
4 |
There are a few ways this can occur:
|
JM |
5 |
|
|
6 |
1. You are using https with a self-signed certificate and you **did not** configure *http.sslVerify=false*
|
|
7 |
1. Window->Preferences->Team->Git->Configuration
|
|
8 |
2. Click the *New Entry* button
|
|
9 |
3. <pre>Key = *http.sslVerify*
|
|
10 |
Value = *false*</pre>
|
d39680
|
11 |
2. Gitblit GO's default self-signed certificate is bound to *localhost* and you are trying to clone/push between machines.
|
JM |
12 |
1. Review the contents of `makekeystore.cmd`
|
|
13 |
2. Set *your hostname* in the *HOSTNAME* variable.
|
|
14 |
3. Execute the script.<br/>This will generate a new certificate and keystore for *your hostname* protected by *server.storePassword*.
|
|
15 |
3. The repository is clone-restricted and you don't have access.
|
|
16 |
4. The repository is clone-restricted and your password changed.
|
|
17 |
5. A regression in Gitblit. :(
|
1f9dae
|
18 |
|
85c2e6
|
19 |
### Why can't I access Gitblit GO from another machine?
|
d39680
|
20 |
1. Please check *server.httpBindInterface* and *server.httpsBindInterface* in `gitblit.properties`, you may be only be serving on *localhost*.
|
JM |
21 |
2. Please see the above answer about "**can't open upload pack**".
|
|
22 |
3. Ensure that any firewall you may have running on the Gitblit server either has an exception for your specified ports or for the running process.
|
85c2e6
|
23 |
|
JM |
24 |
### How do I run Gitblit GO on port 80 or 443 in Linux?
|
1f9dae
|
25 |
Linux requires root permissions to serve on ports < 1024.<br/>
|
JM |
26 |
Run the server as *root* (security concern) or change the ports you are serving to 8080 (http) and/or 8443 (https).
|
85c2e6
|
27 |
|
JM |
28 |
### Gitblit GO does not list my repositories?!
|
d39680
|
29 |
1. Confirm that the value *git.repositoriesFolder* in `gitblit.properties` actually points to your repositories folder.
|
JM |
30 |
2. Confirm that the Gitblit GO process has full read-write-execute permissions to your *git.repositoriesFolder*.
|
85c2e6
|
31 |
|
JM |
32 |
### Gitblit WAR does not list my repositories?!
|
d39680
|
33 |
1. Confirm that the <context-param> *git.repositoriesFolder* value in your `web.xml` file actually points to your repositories folder.
|
JM |
34 |
2. Confirm that the servlet container process has full read-write-execute permissions to your *git.repositoriesFolder*.
|
85c2e6
|
35 |
|
JM |
36 |
### Gitblit WAR will not authenticate any users?!
|
|
37 |
Confirm that the <context-param> *realm.userService* value in your `web.xml` file actually points to a `users.properties` file.
|
1f9dae
|
38 |
|
70b492
|
39 |
### Gitblit won't open my grouped repository (/group/myrepo.git) or browse my log/branch/tag/ref?!
|
JM |
40 |
This is likely an url encoding/decoding problem with forward slashes. There are two possible workarounds for this issue. In `gitblit.properties` or `web.xml`:
|
230632
|
41 |
|
JM |
42 |
1. try setting *web.mountParameters* to *false*.<br/>This changes the url scheme from mounted (*/commit/myrepo.git/abcdef*) to parameterized (*/commit/?r=myrepo.git&h=abcdef*).
|
|
43 |
2. try changing *web.forwardSlashCharacter* to an asterisk or a **!**
|
7e5ee5
|
44 |
|
70b492
|
45 |
Also, if you are running Gitblit behind a proxy, you must ensure that the proxy does not decode and then re-encode request urls with interpretation of *%2F*. If you are using Apache mod_proxy, specify [AllowEncodedSlashes NoDecode](http://httpd.apache.org/docs/2.2/mod/core.html#allowencodedslashes).
|
JM |
46 |
|
1f9dae
|
47 |
## General Interest Questions
|
f90dc6
|
48 |
|
f13c4c
|
49 |
### Gitblit? What kind of name is that?
|
1f9dae
|
50 |
It's a phonetic play on [bitblt][bitblt] which is an image processing operation meaning *bit-block transfer*.
|
f90dc6
|
51 |
|
f13c4c
|
52 |
### Why use Gitblit?
|
1f9dae
|
53 |
It's a small tool that allows you to easily manage shared repositories and doesn't require alot of setup or git kung-foo.
|
f90dc6
|
54 |
|
168566
|
55 |
### Who is the target user for Gitblit?
|
JM |
56 |
Small workgroups that require centralized repositories.
|
|
57 |
|
|
58 |
Gitblit is not meant to be a social coding resource like [Github](http://github.com) or [Bitbucket](http://bitbucket.com) with 100s or 1000s of users. Gitblit is designed to fulfill the same function as your centralized Subversion or CVS server.
|
|
59 |
|
85c2e6
|
60 |
### Why does Gitblit exist when there is Git and Gitweb?
|
168566
|
61 |
As a Java developer I prefer that as much of my tooling as possible is Java.<br/>
|
JM |
62 |
Originally, I was going to use [Mercurial](http://mercurial.selenic.com) but...
|
|
63 |
|
716745
|
64 |
- 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)<br/>
|
168566
|
65 |
Parsing command-line output is fragile and suboptimal.<br/>Unfortunately this is necessary because Mercurial is an application, not a library.
|
JM |
66 |
- 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.<br/>
|
|
67 |
This requires setup and maintenance of multiple, mixed 3rd party components.
|
|
68 |
|
|
69 |
Gitblit eliminates all that complication with its 100% Java stack and simple single configuration file.
|
|
70 |
|
85c2e6
|
71 |
Additionally, Git and Gitweb do not offer repository creation or user management.
|
JM |
72 |
|
f90dc6
|
73 |
### Do I need real Git?
|
d39680
|
74 |
No (mostly). Gitblit is based on [JGit][jgit] which is a pure Java implementation of the [Git version control system][git].<br/>
|
85c2e6
|
75 |
Everything you need for Gitblit (except Java) is either bundled in the distribution file or automatically downloaded on execution.
|
d39680
|
76 |
|
JM |
77 |
**mostly**<br/>
|
|
78 |
JGit does not fully support the git-gc featureset (garbage collection) so you may want native Git to periodically run git-gc until [JGit][jgit] fully supports this feature.
|
716745
|
79 |
|
168566
|
80 |
### Can I run Gitblit in conjunction with my existing Git tooling?
|
5450d0
|
81 |
Yes.
|
f90dc6
|
82 |
|
f13c4c
|
83 |
### Do I need a JDK or can I use a JRE?
|
JM |
84 |
Gitblit will run just fine with a JRE. Gitblit can optionally use `keytool` from the JDK to generate self-signed certificates, but normally Gitblit uses [BouncyCastle][bouncycastle] for that need.
|
1f9dae
|
85 |
|
f13c4c
|
86 |
### Does Gitblit use a database to store its data?
|
JM |
87 |
No. Gitblit stores its repository configuration information within the `.git/config` file and its user information in `users.properties` or whatever filename is configured in `gitblit.properties`.
|
|
88 |
|
1f9dae
|
89 |
### Can I manually edit users.properties, gitblit.properties, or .git/config?
|
JM |
90 |
Yes. You can manually manipulate all of them and (most) changes will be immediately available to Gitblit.<br/>Exceptions to this are noted in `gitblit.properties`.
|
|
91 |
|
d39680
|
92 |
**NOTE:**<br/>Care must be taken to preserve the relationship between user roles and repository names.<br/>Please see the *User Roles* section of the [setup](/setup.html) page for details.
|
a4d249
|
93 |
|
56c549
|
94 |
### Can I restrict access to paths within a repository?
|
JM |
95 |
No. Access restrictions apply to the repository as a whole.
|
|
96 |
|
f13c4c
|
97 |
Gitblit'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).
|
56c549
|
98 |
|
5450d0
|
99 |
### Can I authenticate users against XYZ?
|
85c2e6
|
100 |
Yes. The user service is pluggable. You may write your own user service by implementing the *com.gitblit.IUserService* interface. Set the fully qualified classname as the *realm.userService* property.
|
5450d0
|
101 |
|
f13c4c
|
102 |
### Why doesn't Gitblit support SSH?
|
JM |
103 |
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).<br/>
|
716745
|
104 |
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.
|
a4d249
|
105 |
|
JM |
106 |
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).
|
f90dc6
|
107 |
|
f13c4c
|
108 |
### What types of Search does Gitblit support?
|
JM |
109 |
Gitblit supports case-insensitive searches of *commit message* (default), *author*, and *committer*.<br/>
|
f90dc6
|
110 |
|
JM |
111 |
To search by *author* or *committer* use the following syntax in the search box:
|
|
112 |
|
|
113 |
author: james
|
|
114 |
committer: james
|
|
115 |
|
|
116 |
Alternatively, you could enable the search type dropdown list in your `gitblit.properties` file.
|
|
117 |
|
831469
|
118 |
### Why did you call the setting federation.N.frequency instead of federation.N.period?!
|
JM |
119 |
|
|
120 |
Yes, yes I know that you are really specifying the period, but Frequency sounds better to me. :)
|
|
121 |
|
716745
|
122 |
### Can Gitblit be translated?
|
JM |
123 |
|
|
124 |
Yes. Most messages are localized to a standard Java properties file.
|
c19ae5
|
125 |
|
f90dc6
|
126 |
[bitblt]: http://en.wikipedia.org/wiki/Bit_blit "Wikipedia Bitblt"
|
JM |
127 |
[jgit]: http://eclipse.org/jgit "Eclipse JGit Site"
|
a4d249
|
128 |
[git]: http://git-scm.com "Official Git Site"
|
f13c4c
|
129 |
[mina]: http://mina.apache.org "Apache Mina"
|
c22722
|
130 |
[bouncycastle]: http://bouncycastle.org "The Legion of the Bouncy Castle" |