hg_hooks/blacklist/README
author Pat Downey <patd@symbian.org>
Thu, 21 Jan 2010 16:55:34 +0000
changeset 144 6e81c130aa29
permissions -rw-r--r--
Add initial version of blacklist mercurial extension for use to exclude and manage known bad changesets from mercurial repositories.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
144
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
     1
hg blacklist 
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
     2
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
     3
manage repository changeset blacklist
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
     4
  
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
     5
  This extension is used to manage a blacklist for the repository.
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
     6
  Can blacklist changesets by changeset id, and regular expressions against
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
     7
  the user field of a changeset and also a changesets file list.
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
     8
  
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
     9
  Current rules can be viewed using the [-l|--list] operation.
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
    10
  
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
    11
  Each modification to a blacklist is logged. These can be viewed using the 
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
    12
  --auditlog operation.
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
    13
  
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
    14
  Each time a changeset is blocked/denied it's logged. These can be viewed
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
    15
  using the --blocklog operation.
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
    16
  
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
    17
  Types of changeset blacklist rules can be defined implicitly or explicitly:
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
    18
  
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
    19
    If a rule definition contains between 12 and 40 hexadecimal characters 
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
    20
    it is assumed to be a rule matched against changeset id. Can be set 
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
    21
    explicitly set with the -n flag to the --add operation.
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
    22
  
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
    23
    If a rule definition contains a '@' it is assumed to be a rule matched 
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
    24
    against a changeset's user property. Can be set explicitly with 
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
    25
    the -u flag to the --add operation.
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
    26
  
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
    27
    Otherwise the rule is assumed to be matched against a changeset's file 
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
    28
    list. Can be set explicitly with the -f flag to the --add operation.
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
    29
  
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
    30
    When this extension is enabled a hook is also added to the 
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
    31
    'pretxnchangegroup' action that will block any incoming changesets 
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
    32
    (via pull/push/unbundle) if they are blacklisted.
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
    33
    It won't block any local commits.
6e81c130aa29 Add initial version of blacklist mercurial extension for use to exclude
Pat Downey <patd@symbian.org>
parents:
diff changeset
    34