Skip to main content

Tool for "git submodule foreach" execution in parallel

Project description

Parallel Foreach Submodule

PyPI Version PyPI Compatibility PyPI License Codacy Badge Build Status

Parallel Foreach Submodule (PFS) is a tool for "git submodule foreach" execution in parallel.

The origin of the tool is the following question in Stack Overflow:

👀 Execute “git submodule foreach” in parallel

What can I do with PFS?

  • Execute git submodule foreach in parallel
  • Use it from terminal when it is installed
  • Multiplatform execution (it is developed in Python)


You can install or upgrade PFS with:

$ pip install pfs --upgrade

Or you can install from source with:

$ git clone --recursive
$ cd parallel_foreach_submodule
$ pip install .

Quick example

$ pfs -p "D:\project" -c "git pull origin" -j 8

The example executes command git pull origin for each submdoule in D:\project using 8 threads.


List of shortcuts or aliases to write faster some usual operations

  • pfs --pull ~ pfs -c "git pull origin"
  • pfs --status ~ pfs -c "git status"
  • pfs --pending ~ pfs -c "git log <since origin/current>..<until current>"
  • pfs --in-branch ~ pfs -c "IF (git rev-parse --abbrev-ref HEAD) == branch"
  • pfs --not-in-branch ~ pfs -c "IF (git rev-parse --abbrev-ref HEAD) != branch"

⚠️ Shortcuts only show repositories affected with changes, use --verbose for full log


Run the following command to see all options available:

pfs --help or pfs -h

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for pfs, version 0.6.1
Filename, size File type Python version Upload date Hashes
Filename, size pfs-0.6.1.tar.gz (9.0 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page