Added hooks, policy and rakefile to install selinux policy for this plugin
Performance fix for redmine_git_hosting.

This prevents a rediculous number of calls to update_repositories
caused by the fact that redmine saves to the repository model for
every commit that it examines.  This patch also prevents multiple
calls to update_repositories when adding groups to the membership
of a project.

You need to migrate plugins to take advantage of new indices:

	rake db:migrate_plugins
More performance improvements.

This patch should remove all remaining need for recursive calls to update_repositories.
Will log such calls as errors in upcoming major code fix...
Rewrite of primary gitolite interface for better resilience.

The primary "update_repositories" function is now largely self-correcting
against a variety of errors seen in the field.  Also added a bunch of
error checking on functions called-out to the shell.  Among other things,
this code attempts to reconnect the gitolite-admin public key when it
gets deleted (can happen).

Regular use of 'sys/fetch_changesets' will recorrect any errors in the
public key directory and gitolite.conf file. For example, orphan keys
that happen to be left behind in the public key directory will be removed,
missing keys will be added, etc.

One new piece of functionality is the 'recycle_bin' which is used to store
deleted repositories immediately after they are deleted (allowing them
to be recovered for up to 'gitRecycleExpireTime' hours after deletion).

You need to migrate plugins because there are new plugin settings:

    rake db:migrate_plugins
Missed a performance case/source of recursion complaints in the log.

This is not a major issue (or even correctness issue), but will cause
complaints of recursion in the log.
Update of selinux policy for latest version of selinux package. Also
change rakefile to install binary policy (redmine_git.pp) instead of
compiling source policy (redmine_git.te) before every
installation. New rake task added to recompile policy if necessary:

    rake selinux:redmine_git_hosting:build_policy
Continuing rewrite of redmine_git_hosting to rationalize path handling.

It is important to remember to migrate_plugin settings, since there
are new settings and one setting has changed a bit (i.e. httpServer
should nolonger include a rails_root path).  Thus, make sure to:

    rake db:migrate_plugins

This commit includes a number of changes.  First and foremost, the
update_repositories() function now handles deletes and repository
moves as well as all other changes.  Consequently, :RESYNC_ALL will be
able to recover from a variety of problems involving movement of
repositories resulting from project parent changes.  Note that changes
in the parent for a subtree of projects works much better than before.

Second, this commit adds new settings which allow (1) redmine-managed
repositories to be focused in a specific subdirectory of the gitolite
repository, (2) allow repositories to be named either hierarchically
(default) or concentrated in a single directory (flat) independent of
project parents, and (3) an extra path parameter which can be added to
the http URL for smart http access of repositories.

Third, added the "access" box at the top of the settings page which
shows explicitly how settings affect access parameters.

Random improvements include (1) rewrite of routes for smart HTTP to
better handle changes in parentage (and avoid need to change routes as
project parents change); (2) changes in settings now immediately
trigger resulting changes in state (before, the settings cache got in
the way); (3) all of the path functions (repository positions, ssh
access, http access) have been concentrated into a small number of
functions at the top of git_hosting.rb, rather than spread throughout
the code; (4) continuing the changes started with the original
performance fixes, cleaned up observer behavior triggered by changes
in project membership and settings.
Repair hook parameters for all projects during :resync_all.
Allow repair hook functionality to work with older versions of sudo.
Added support for ssh port specification in gitServer. Also clarity fix for access box.
Fix bugs in error path for repository mirror push. Correct status is now reported. Removed extra cruft in error reporting.
Merge remote-tracking branch 'kubitron/resilient'