Skip to main content

Manage git, mercurial and svn repositories through CLI. Configure with JSON / YAML files.

Project description

``vcspull`` - manage your git, mercurial and svn repositories via CLI.
Configure via JSON / YAML config files.

.. image:: https://img.shields.io/pypi/v/vcspull.svg
:target: http://badge.fury.io/py/vcspull

.. image:: https://img.shields.io/travis/tony/vcspull.svg
:target: https://travis-ci.org/tony/vcspull

.. image:: https://img.shields.io/coveralls/tony/vcspull.svg
:target: https://coveralls.io/r/tony/vcspull?branch=master

.. image:: https://img.shields.io/github/license/tony/vcspull.svg

.. image:: https://raw.github.com/tony/vcspull/master/doc/_static/vcspull-demo.gif
:scale: 100%
:width: 45%
:align: center

Above: Run ``svn update``, ``git pull``, ``hg pull && hg update`` en masse.

Sync multiple git, mercurial and subversion repositories via a YAML /
JSON file.

* supports svn, git, hg version control systems
* automatically checkout fresh repositories
* update to the latest repos with ``$ vcspull``
* `Documentation`_, `API`_ and `Examples`_.
* vcspull builds upon `pip`_'s `RFC3986`_-based `url scheme`_.

See the `Quickstart`_ to jump in. Or see an `example .vcspull.yaml`_.

**Here's what you can do**

Create a ``.vcspull.yaml``:

.. code-block:: yaml

~/code/:
"flask": "git+https://github.com/mitsuhiko/flask.git"

Clone and update your repositories at any time:

.. code-block:: bash

$ vcspull

Have a lot of projects? Use arguments to clone / update what you need.

.. code-block:: bash

$ vcspull flask

Use `fnmatch`_:

.. code-block:: bash

# any repo starting with "fla"
$ vcspull "fla*"

# inside of a directory with "co" anywhere, on github.
$ vcspull -d "*co*" -r "*github.com*" "fla*"

**Current Limitations:**

- Support for ``svn`` username and password.

.. _RFC3986: http://tools.ietf.org/html/rfc3986.html
.. _example .vcspull.yaml: https://github.com/tony/.dot-config/blob/master/.vcspull.yaml
.. _fnmatch: http://pubs.opengroup.org/onlinepubs/009695399/functions/fnmatch.html

============== ==========================================================
Python support Python 2.7, >= 3.3
VCS supported git(1), svn(1), hg(1)
Config formats YAML, JSON, python dict
Source https://github.com/tony/vcspull
Docs http://vcspull.rtfd.org
Changelog http://vcspull.readthedocs.org/en/latest/history.html
API http://vcspull.readthedocs.org/en/latest/api.html
Issues https://github.com/tony/vcspull/issues
Travis http://travis-ci.org/tony/vcspull
Test Coverage https://coveralls.io/r/tony/vcspull
pypi https://pypi.python.org/pypi/vcspull
Open Hub https://www.openhub.net/p/vcspull
License `BSD`_.
git repo .. code-block:: bash

$ git clone https://github.com/tony/vcspull.git
install dev .. code-block:: bash

$ git clone https://github.com/tony/vcspull.git vcspull
$ cd ./vcspull
$ virtualenv .env
$ source .env/bin/activate
$ pip install -e .
tests .. code-block:: bash

$ python ./run-tests.py
run .. code-block:: bash

$ vcspull
============== ==========================================================

.. _BSD: http://opensource.org/licenses/BSD-3-Clause
.. _Documentation: http://vcspull.readthedocs.org/en/latest/
.. _API: http://vcspull.readthedocs.org/en/latest/api.html
.. _Examples: http://vcspull.readthedocs.org/en/latest/examples.html
.. _Quickstart: http://vcspull.readthedocs.org/en/latest/quickstart.html
.. _pip: http://www.pip-installer.org/en/latest/
.. _url scheme: http://www.pip-installer.org/en/latest/logic.html#vcs-support
.. _saltstack: http://www.saltstack.org

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

vcspull-0.1.1.tar.gz (40.4 kB view details)

Uploaded Source

File details

Details for the file vcspull-0.1.1.tar.gz.

File metadata

  • Download URL: vcspull-0.1.1.tar.gz
  • Upload date:
  • Size: 40.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for vcspull-0.1.1.tar.gz
Algorithm Hash digest
SHA256 e6a44586bf95ad870fc034f61d6bdd9df278389351b3ef252853b5abaf782408
MD5 d9120c8621316aed5be908bf032d937d
BLAKE2b-256 23ea9ab7dd8baab32714b611a1e71d2161d1c4fbce0bbcafee69d7c1e96b9f3b

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page