de40461d9a
- explicit 'list' gives way to mindmap, ... - 'fm2mt.pl' to produce master-toc.mkd from the mindmap - mkdoc no longer ignores master-toc.mkd, calls fm2mt.pl itself and LOTS of changes to the actual docs
73 lines
2.9 KiB
Markdown
73 lines
2.9 KiB
Markdown
# WARNINGS
|
|
|
|
Gitolite does NOT like it if you fiddle with files, directories, permissions,
|
|
etc., on the server except as directed in the documentation. Gitolite also
|
|
expects all the directories and files it manages/uses to be owned by the
|
|
hosting user and not have strange permissions and ownerships.
|
|
|
|
Very few people have fallen foul of this, but the ones who *did* became very
|
|
obnoxious about it, hence this warning.
|
|
|
|
Gitolite depends on several system-installed packages: openssh, git, perl, sh
|
|
being the main ones. They should all be configured sensibly and with most of
|
|
the normal defaults. (For example, if your sshd config says the authorized
|
|
keys file should be placed in some directory other than the default, expect
|
|
trouble).
|
|
|
|
----
|
|
|
|
For the entertainment of the sensible majority, and as a way of thanking all
|
|
of you, here are some examples of requests (demands in some cases) I have
|
|
received over the last couple of years.
|
|
|
|
* deleting environment variables copied from client session
|
|
|
|
demand: add code to delete certain environment variables at startup
|
|
because "the openssh servers in the linux distribution that [he] use[s],
|
|
are configured to copy `GIT_*` variables to the remote session".
|
|
|
|
This is wrong on so many levels it's almost plonk-able!
|
|
|
|
* using `cp` instead of `ln`
|
|
|
|
Guy has an NTFS file system mounted on Linux. So... no symlinks (an NTFS
|
|
file system on Windows works fine because msysgit/cygwin manage to
|
|
*simulate* them. NTFS mounted on Linux won't do that!)
|
|
|
|
He wanted all the symlink stuff to be replaced by copies.
|
|
|
|
No. Way.
|
|
|
|
* non-bare repos on the server
|
|
|
|
Some guy gave me a complicated spiel about git-svn not liking bare repos
|
|
or whatever. I tuned off at the first mention of those 3 letters so I
|
|
don't really know what the actual problem was.
|
|
|
|
But it doesn't matter. Even if someone (Ralf H) had not chipped in with a
|
|
workable solution, I still would not do it. A server repo should be bare.
|
|
Period.
|
|
|
|
* incomplete ownership of `GL_REPO_BASE`
|
|
|
|
This guy had a repo-base directory where not all of the files were owned
|
|
by the git user. As a result, some of the hooks did not get created. He
|
|
claimed my code should detect OS-permissions issues while it's doing its
|
|
stuff.
|
|
|
|
No. I refuse to have the code constantly look over its shoulder making
|
|
sure fundamental assumptions are being met.
|
|
|
|
* empty template directory
|
|
|
|
(See man git-init for what a template directory is).
|
|
|
|
The same guy with the environment variables had an empty template
|
|
directory because he "does not like to have sample hooks in every
|
|
repository". So naturally, the hooks directory does not get created when
|
|
you run a `git init`. He expects gitolite to compensate for it.
|
|
|
|
Granted, it's only a 1-line change. But again, this falls under
|
|
"constantly looking over your shoulder to double check fundamental
|
|
assumptions". Where does it end?
|