Parallel Foreach Submodule
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:
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)
Installation
You can install or upgrade PFS with:
$ pip install pfs --upgrade
Or you can install from source with:
$ git clone https://github.com/stt-systems/parallel_foreach_submodule.git --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.
Shortcuts
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"
--verbose
for full log
Help
Run the following command to see all options available:
pfs --help
or pfs -h