jhermann/thin-man

:construction: [ALPHA] Thin Man backs up all metadata in your source tree of git repos.

★ 3Forks 1PythonGitHub ↗Compare
backupgitproductivitypythonsynctool

README

Thin Man

Thin Man backs up all metadata in your source tree of git repos.

logo

 Travis CI  Coveralls  GitHub Issues  License  Development Status  Latest Version

Overview

By recording the tree layout, git remotes and ‘refs’ of the typical ~/src directory containing your cloned git repos, Thin Man can restore that structure later on, and also sync it to other machines.

This can be also part of a backup strategy by only including that small amount of metadata in a backup set, instead of duplicating all the data that is available in remote locations anyway.

That of course assumes that your repositories are usually clean and don't contain days of uncommitted work, and can be easily restored into working shape by bootstrap scripts and the like. But that's a given, right?

Installation

Thin Man can be installed via pip install thin-man as usual, see releases for an overview of available versions. To get a bleeding-edge version from source, use these commands:

repo="jhermann/thin-man"
pip install -r <(curl -skS "https://raw.githubusercontent.com/$repo/master/requirements.txt")
pip install -UI -e "git+https://github.com/$repo.git#egg=${repo#*/}"

See Contributing on how to create a full development environment.

To add bash completion, read the Click docs about it, or just follow these instructions:

cmdname=thin-man
mkdir -p ~/.bash_completion.d
( export _$(tr a-z- A-Z_ <<<"$cmdname")_COMPLETE=source ; \
  $cmdname >~/.bash_completion.d/$cmdname.sh )
grep /.bash_completion.d/$cmdname.sh ~/.bash_completion >/dev/null \
    || echo >>~/.bash_completion ". ~/.bash_completion.d/$cmdname.sh"
. "/etc/bash_completion"

Usage

…

Contributing

To create a working directory for this project, call these commands:

git clone "https://github.com/jhermann/thin-man.git"
cd "thin-man"
. .env --yes --develop
invoke build --docs test check

See CONTRIBUTING for more.

Throughput Graph

References

Similar Projects

Tools

Packages

Acknowledgements

…

Contributors

jhermannmovermeyer

Issues