git-repo/subcmds
Jimmie Wester 38e4387f8e Implementation of manifest defined githooks
When working within a team or corporation it is often
useful/required to use predefined git templates. This
change teaches repo to use a per-remote git hook template
structure.

The implementation is done as a continuation of the
existing projecthook functionality. The terminology is
therefore defined as projecthooks.

The downloaded projecthooks are stored in the .repo
directory as a metaproject separating them from the users
project forest.

The projecthooks are downloaded and set up when doing a
repo init and updated for each new repo init.

When downloading a mirror the projecthooks gits are
not added to the bare forest since the intention is to
ensure that the latest are used (allows for company policy
enforcement).

The projecthooks are defined in the manifest file in the
remote element as a subnode, the name refers to the
project name on the server referred to in the remote.
<remote name="myremote ..>
   <projecthook name="myprojecthookgit" revision="myrevision"/>
</remote>

The hooks found in the projecthook revision supersede
the stock hooks found in repo. This removes the need for
updating the projecthook gits for repo stock hook changes.

Change-Id: I6796b7b0342c1f83c35f4b3e46782581b069a561
Signed-off-by: Patrik Ryd <patrik.ryd@stericsson.com>
Signed-off-by: Ian Kumlien <ian.kumlien@gmail.com>
2015-02-03 16:01:15 +09:00
..
__init__.py Some fixes for supporting python3 2013-04-18 21:35:49 +05:30
abandon.py Change print statements to work in python3 2012-11-13 17:33:56 -08:00
branches.py Provide detail print-out when not all projects of a branch are current. 2014-07-11 10:56:03 -07:00
checkout.py Change print statements to work in python3 2012-11-13 17:33:56 -08:00
cherry_pick.py Fix: Missing spaces in printed messages 2013-03-05 17:30:59 +09:00
diff.py Option for 'repo diff' to generate output suitable for 'patch' cmd 2012-04-13 09:20:10 -07:00
diffmanifests.py Add the "diffmanifests" command 2014-02-17 11:20:11 +00:00
download.py Exit 1 if repo download -c fails 2014-10-17 15:45:57 -04:00
forall.py Add --jobs option to forall subcommand 2014-06-24 01:02:54 +00:00
grep.py Tidy up code formatting a bit more 2012-11-14 12:09:38 +09:00
help.py Some fixes for supporting python3 2013-04-18 21:35:49 +05:30
info.py Remove unused show_smart option on list and info commands 2013-05-16 09:32:18 +09:00
init.py Implementation of manifest defined githooks 2015-02-03 16:01:15 +09:00
list.py Remove unused show_smart option on list and info commands 2013-05-16 09:32:18 +09:00
manifest.py Change print statements to work in python3 2012-11-13 17:33:56 -08:00
overview.py Some fixes for supporting python3 2013-04-18 21:35:49 +05:30
prune.py Change print statements to work in python3 2012-11-13 17:33:56 -08:00
rebase.py repo: Support multiple branches for the same project. 2013-10-14 15:34:32 -07:00
selfupdate.py Change print statements to work in python3 2012-11-13 17:33:56 -08:00
smartsync.py Clean up imports 2012-09-18 09:54:57 +02:00
stage.py stage: replace filter on lambda with list comprehension 2013-05-08 06:37:15 +01:00
start.py If revision is sha hash and dest-branch is defined, use it for starting branch 2014-10-27 12:25:05 +00:00
status.py Use next(iterator) rather than iterator.next() 2014-05-07 08:44:20 +01:00
sync.py Allow selection of a target when using smart sync. 2014-10-02 10:17:44 -07:00
upload.py upload: report names of uncommitted files 2014-10-14 11:20:05 -07:00
version.py Change print statements to work in python3 2012-11-13 17:33:56 -08:00