Provided by: grokmirror_2.0.11-2_all bug

NAME

       GROK-MANIFEST - Create manifest for use with grokmirror

SYNOPSIS

          grok-manifest [opts] -m manifest.js[.gz] -t /path [/path/to/bare.git]

DESCRIPTION

       Call  grok-manifest  from  a  git  post-update  or  post-receive hook to create the latest
       repository manifest. This manifest file is downloaded by mirroring systems (if manifest is
       newer  than what they already have) and used to only clone/pull the repositories that have
       changed since the grok-pull's last run.

OPTIONS

          --version
                 show program's version number and exit

          -h, --help
                 show this help message and exit

          --cfgfile=CFGFILE
                 Path to grokmirror.conf containing a [manifest] section

          -m MANIFILE, --manifest=MANIFILE
                 Location of manifest.js or manifest.js.gz

          -t TOPLEVEL, --toplevel=TOPLEVEL
                 Top dir where all repositories reside

          -l LOGFILE, --logfile=LOGFILE
                 When specified, will put debug logs in this location

          -c, --check-export-ok
                 Honor the git-daemon-export-ok magic file and do  not  export  repositories  not
                 marked as such

          -n, --use-now
                 Use current timestamp instead of parsing commits

          -p, --purge
                 Purge deleted git repositories from manifest

          -x, --remove
                 Remove repositories passed as arguments from the manifest file

          -y, --pretty
                 Pretty-print  the  generated  manifest (sort repos and add indentation). This is
                 much slower, so should be used with caution on large collections.

          -w, --wait-for-manifest
                 When running with arguments, wait if manifest is not there (can be  useful  when
                 multiple writers are writing to the manifest file via NFS)

          -i IGNORE, --ignore-paths=IGNORE
                 When  finding  git dirs, ignore these paths (can be used multiple times, accepts
                 shell-style globbing)

          -o, --fetch-objstore
                 Fetch updates into objstore repo (if used)

          -v, --verbose
                 Be verbose and tell us what you are doing

       You can set some of these options in a config file that you can pass via --cfgfile option.
       See  example  grokmirror.conf file for documentation. Values passed via cmdline flags will
       override the corresponding config file values.

EXAMPLES

       The examples assume that the repositories are located in /var/lib/gitolite3/repositories.

       Initial manifest generation:

          /usr/bin/grok-manifest -m /var/www/html/manifest.js.gz \
              -t /var/lib/gitolite3/repositories

       Inside the git hook:

          /usr/bin/grok-manifest -m /var/www/html/manifest.js.gz \
              -t /var/lib/gitolite3/repositories -n `pwd`

       To purge deleted repositories from the manifest, use the -p flag when running from cron:

          /usr/bin/grok-manifest -m /var/www/html/manifest.js.gz \
              -t /var/lib/gitolite3/repositories -p

       You can also add it to the gitolite's D command using the -x flag:

          /usr/bin/grok-manifest -m /var/www/html/manifest.js.gz \
              -t /var/lib/gitolite3/repositories \
              -x $repo.git

       To troubleshoot potential problems, you can pass -l parameter to grok-manifest, just  make
       sure  the  user  executing the hook command (user git or gitolite, for example) is able to
       write to that location:

          /usr/bin/grok-manifest -m /var/www/html/manifest.js.gz \
              -t /var/lib/gitolite3/repositories \
              -l /var/log/grokmirror/grok-manifest.log -n `pwd`

SEE ALSO

grok-pull(1)

       • git(1)

SUPPORT

       Email tools@linux.kernel.org.

AUTHOR

       mricon@kernel.org

       License: GPLv3+

COPYRIGHT

       The Linux Foundation and contributors