Scroll to navigation



GROK-PULL - Clone or update local git repositories


grok-pull -c /path/to/repos.conf


This utility runs from a cronjob and downloads the latest manifest from the grokmirror master. If there are new repositories or changes in the existing repositories, grok-pull will perform the necessary git commands to clone or fetch the required data from the master.

At the end of its run, grok-pull will generate its own manifest file, which can then be used for further mirroring.


show program's version number and exit
-h, --help
show this help message and exit
-v, --verbose
Be verbose and tell us what you are doing
-n, --no-mtime-check
Run without checking manifest mtime.
-f, --force
Force full git update regardless of last-modified times. Also useful when repos.conf has changed.
-p, --purge
Remove any git trees that are no longer in manifest.
-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.
-r, --no-reuse-existing-repos
If any existing repositories are found on disk, do NOT set new remote origin and reuse, just skip them entirely
-m, --verify-mirror
Do not perform any updates, just verify that mirror matches upstream manifest.
-s SUBPATH, --verify-subpath=SUBPATH
Only verify a subpath (accepts shell globbing)
-c CONFIG, --config=CONFIG
Location of repos.conf


Locate repos.conf and modify it to reflect your needs. The default configuration file is heavily commented.

Add a cronjob to run as frequently as you like. For example, add the following to /etc/cron.d/grokmirror.cron:

# Run grok-pull every minute as user "mirror"
* * * * * mirror /usr/bin/grok-pull -p -c /etc/grokmirror/repos.conf

Make sure the user "mirror" (or whichever user you specified) is able to write to the toplevel, log and lock locations specified in repos.conf.


  • grok-manifest(1)
  • grok-fsck(1)
  • git(1)


Please send support requests to the mailing list:


License: GPLv3+


The Linux Foundation and contributors
2013-08-22 0.4