vcspull¶
Manage your commonly used repos from YAML / JSON manifest(s). Compare to myrepos.
Great if you use the same repos at the same locations across multiple
machines or want to clone / update a pattern of repos without having
to cd
into each one.
- clone /update to the latest repos with
$ vcspull
- use filters to specify a location, repo url or pattern in the manifest to clone / update
- supports svn, git, hg version control systems
- automatically checkout fresh repositories
- Documentation and Examples.
- supports pip-style URL’s (RFC3986-based url scheme)
how to¶
install¶
$ pip install --user vcspull
configure¶
add repos you want vcspull to manage to ~/.vcspull.yaml
.
vcspull does not currently scan for repos on your system, but it may in the future
~/code/:
flask: "git+https://github.com/mitsuhiko/flask.git"
~/study/c:
awesome: 'git+git://git.naquadah.org/awesome.git'
~/study/data-structures-algorithms/c:
libds: 'git+https://github.com/zhemao/libds.git'
algoxy:
repo: 'git+https://github.com/liuxinyu95/AlgoXY.git'
remotes:
tony: 'git+ssh://[email protected]/tony/AlgoXY.git'
(see the author’s .vcspull.yaml, more examples.)
next, on other machines, copy your $HOME/.vcspull.yaml
file
or $HOME/.vcspull/
directory them and you can clone your repos
consistently. vcspull automatically handles building nested
directories. Updating already cloned/checked out repos is done
automatically if they already exist.
clone / update your repos¶
$ vcspull
keep nested VCS repositories updated too, lets say you have a mercurial or svn project with a git dependency:
external_deps.yaml
in your project root, (can be anything):
./vendor/:
sdl2pp: 'git+https://github.com/libSDL2pp/libSDL2pp.git'
clone / update repos:
$ vcspull -c external_deps.yaml
See the Quickstart for more.
pulling specific repos¶
have a lot of repos?
you can choose to update only select repos through fnmatch patterns.
remember to add the repos to your ~/.vcspull.{json,yaml}
first.
The patterns can be filtered by by directory, repo name or vcs url.
# any repo starting with "fla"
$ vcspull "fla*"
# any repo with django in the name
$ vcspull "*django*"
# search by vcs + url
# since urls are in this format <vcs>+<protocol>://<url>
$ vcspull "git+*"
# any git repo with python in the vcspull
$ vcspull "git+*python*
# any git repo with django in the vcs url
$ vcspull "git+*django*"
# all repositories in your ~/code directory
$ vcspull "$HOME/code/*"

More information¶
- Source: https://github.com/vcs-python/vcspull
- Docs: https://vcspull.git-pull.com
- Changelog: https://vcspull.git-pull.com/history.html
- API: https://vcspull.git-pull.com/api.html
- Issues: https://github.com/vcs-python/vcspull/issues
- Test Coverage: https://codecov.io/gh/vcs-python/vcspull
- pypi: https://pypi.python.org/pypi/vcspull
- Open Hub: https://www.openhub.net/p/vcspull
- License: MIT.
- Quickstart
- Examples
- Command Line Interface
- Development
- History
- vcspull 1.5.0 (2020-08-11)
- vcspull 1.4.3 (2020-08-05)
- vcspull 1.4.2 (2020-08-01)
- vcspull 1.4.1 (2020-08-01)
- vcspull 1.4.0 (2020-08-01)
- vcspull 1.3.1 (2020-07-26)
- vcspull 1.3.0post2 (2020-07-26)
- vcspull 1.3.0post1 (2020-07-26)
- vcspull 1.3.0 (2020-07-25)
- vcspull 1.2.0 (2018-07-08)
- vcspull 1.1.0 (2018-03-11)
- vcspull 1.0.3 (2016-12-19)
- vcspull 1.0.2 (2016-12-19)
- vcspull 1.0.1 (2016-11-24)
- vcspull 1.0.0 (2016-09-13)
- vcspull 0.9.0 (2016-05-26)
- vcspull 0.2.2 (2015-07-10)
- vcspull 0.2.1 (2015-06-12)
- vcspull 0.2.0 (2015-05-19)
- vcspull 0.1.1 (2015-05-09)
- vcspull 0.1.0 (2015-04-30)
- vcspull 0.0.10 (2015-04-08)
- vcspull 0.0.9-1 (2015-03-27)
- vcspull 0.0.9 (2015-03-25)
- vcspull 0.0.8-4 <2014-02-06)
- vcspull 0.0.8-3 <2014-02-06)
- vcspull 0.0.8-2 <2014-02-05)
- vcspull 0.0.8-1 <2014-02-05)
- vcspull 0.0.8 <2014-02-05)
- vcspull 0.0.6 <2013-12-03)
- vcspull 0.0.5 <2013-11-28)
- vcspull 0.0.4 <2013-11-25)
- vcspull 0.0.3 <2013-11-23)
- vcspull 0.0.2 <2013-11-23)
- vcspull 0.0.2 <2013-11-16)
- vcspull 0.0.1 <2013-11-15)
- vcspull 0.0.1 <2013-11-09)
- vcspull 0.0.1 <2013-10-23)
- vcspull 0.0.1 <2013-10-17)
- vcspull 0.0.1 <2013-10-08)
- vcspull 0.0.1 <2013-10-06)