gitolite/contrib/adc
Sitaram Chamarty 85da5572b2 some nice ADC changes... (warning: minor backward compat breakage)
- support for ADCs with unchecked arguments
  - rsync, htpasswd, and svnserve gone from core; turned into ADCs

Backward compat breakage and fix: Please see documentation for details,
but if you're using gitolite to control rsync you will now need to setup
ADCs (admin defined commands), and install at least the new "rsync" ADC.

----

Thanks to Joey Hess (see commit prior to this) for forcing me to stop
being lazy and get this out of my long term todo list.
2011-10-17 18:42:57 +05:30
..
able (minor) bashism fixes, usability fix, for "able" adc 2011-02-25 06:21:13 +05:30
adc.common-functions (adc) change quoting when calling cli_repo_rights from shell 2011-06-26 11:33:56 +05:30
delete-branch new adc to allow deleting a branch that you created; see below 2011-05-02 07:15:12 +05:30
fork fork adc acquired some good ideas from the KDE folks 2011-02-25 21:15:08 +05:30
get-rights-and-owner.in-perl (minor doc fixes) 2011-02-21 21:25:43 +05:30
git supercool new admin-defined command "git" (disabled by default) 2011-02-10 14:01:08 +05:30
git-annex-shell git-annex support via unrestricted ADC 2011-10-17 17:33:03 +05:30
gl-reflog repo_rights is no longer a kosher *public* interface 2011-09-02 22:41:27 +05:30
help (password access) can now do ADCs also 2011-09-16 09:15:42 +05:30
htpasswd some nice ADC changes... (warning: minor backward compat breakage) 2011-10-17 18:42:57 +05:30
hub 'hub' adc request-status subcommand can ask for details by request-number 2011-03-13 16:57:54 +05:30
hub.mkd (doc) assorted docfixes 2011-09-28 04:23:32 +05:30
list-trash ADC "rmrepo" replaced by "rm" and "trash", with helper ADCs 2010-10-22 17:43:09 +05:30
lock a slew of adc changes; details below: 2010-10-28 16:43:04 +05:30
perms Added perms PDC to supplement setperms/getperms 2011-01-21 14:14:09 +05:30
pygitolite.py Added perms PDC to supplement setperms/getperms 2011-01-21 14:14:09 +05:30
README.mkd git-annex support via unrestricted ADC 2011-10-17 17:33:03 +05:30
repo-deletion.mkd (doc) assorted docfixes 2011-09-28 04:23:32 +05:30
restore a slew of adc changes; details below: 2010-10-28 16:43:04 +05:30
restrict-admin remove a few needless bashisms... 2010-06-01 20:07:53 +05:30
rm (projects.list changes) collect gitweb-specific stuff in one place 2011-10-06 19:32:09 +05:30
rmrepo a slew of adc changes; details below: 2010-10-28 16:43:04 +05:30
rsync some nice ADC changes... (warning: minor backward compat breakage) 2011-10-17 18:42:57 +05:30
s3backup update s3backup adc to disable pushes first 2011-04-24 15:14:37 +05:30
sskm (sskm) hush output from internal git commands 2011-06-01 12:16:23 +05:30
sskm.mkd (sskm) document courtesy Jeff Mitchell 2011-06-01 20:17:55 +05:30
su-expand adc su-expand to allow admin to run 'expand' on other users 2010-10-16 12:22:47 +05:30
su-getperms su-getperms and su-setperms 2011-05-08 11:22:42 +05:30
su-setperms su-getperms and su-setperms 2011-05-08 11:22:42 +05:30
sudo (minor glitch in sudo adc) 2010-10-06 22:57:45 +05:30
svnserve some nice ADC changes... (warning: minor backward compat breakage) 2011-10-17 18:42:57 +05:30
symbolic-ref 'symbolic-ref' ADC replaces and obsoletes 'set-head' 2011-09-26 19:43:57 +05:30
trash a slew of adc changes; details below: 2010-10-28 16:43:04 +05:30
unlock a slew of adc changes; details below: 2010-10-28 16:43:04 +05:30
watch added watch ADC (includes documentation), courtesy mitchell@kde.org 2010-11-18 12:40:09 +05:30
who-pushed (minor) who-pushed adc falls afoul of egrep incompat between Linux distros! 2011-02-25 06:21:17 +05:30

brief descriptions of the shipped ADCs (admin-defined commands)

(...with pointers to further information where needed)


able: enable/disable push access temporarily (such as for taking backups or other admin chores); details here.

delete-branch: allow someone to delete a branch that they themselves created. (i.e., when the user had RWC, but not RWCD, permissions). Details on this ADC are here; details on RWC/RWD/RWCD etc are here.

fork: Think of it as a server-side clone; details here.

get-rights-and-owner.in-perl: Most of the ADCs are in shell, so this is a sample of how to write an ADC in perl.

git-annex-shell: allows git-annex to store and retrieve annexed file content in repositories. (This ADC requires unrestricted arguments.)

gl-reflog: show a fake "reflog" from the server, and allow recovery from deleted branches and bad force pushes; details in source.

help: not all shipped ADCs may be enabled by the site admin. Conversely the admin may create and install his own ADCs that dont ship with gitolite itself. This ADC displays site-local help, if the site admin enabled it.

hub: allow "pull requests" a la github; details here.

rm, lock, and unlock:
trash, list-trash, and restore:

two families of repo deletion commands; details here

restrict-admin: sample program to show how you can allow the admin to run pre-specified shell commands (without actually having full shell access). Details here.

sudo: allow admin to run ADCs on behalf of a user. Useful in support situations I guess. Details in source.

Note: the Unix "sudo" and "su" programs are most often used to acquire higher privileges, although they're actually designed to go the other way also. In gitolite we do not do the former, only the latter (i.e., a normal gitolite user cannot do admin-stuff using this ADC).

su-expand, su-getperms, su-setperms: as above, but for the internal commands 'expand', 'getperms', and 'setperms'. (These commands are not ADCs so you cannot simply use the 'sudo' ADC described above).

who-pushed: find the last person to push a given commit; details in source.