https://github.com/hartwork/backup-my-hub
:octopus: Simple command line tool to make local backups of GitHub repositories and gists (Python)
https://github.com/hartwork/backup-my-hub
Last synced: 10 months ago
JSON representation
:octopus: Simple command line tool to make local backups of GitHub repositories and gists (Python)
- Host: GitHub
- URL: https://github.com/hartwork/backup-my-hub
- Owner: hartwork
- Created: 2015-01-31T16:31:01.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2020-09-29T21:41:55.000Z (almost 6 years ago)
- Last Synced: 2024-12-30T20:51:30.637Z (over 1 year ago)
- Language: Python
- Homepage:
- Size: 15.6 KB
- Stars: 3
- Watchers: 4
- Forks: 3
- Open Issues: 1
-
Metadata Files:
- Readme: README.asciidoc
Awesome Lists containing this project
README
About
-----
_backup-my-hub_ is my take at a simple command line tool to backup
* both Git repositories and https://gist.github.com/[gists]
* for a given list of GitHub users, organizations or repositories
to a given local directory.
I started _backup-my-hub_ because I moved most of my Git repositories
to GitHub and wanted to be sure that if my account or some repository
of mine ever gets deleted or blocked, I would have a backup.
Configuration
-------------
Configuration is rather simple, though a bit unusual.
I picked this format for extensibility:
-------------------------------------------------------------------
# cat ~/.config/backup-my-hub/main.cfg
[user hartwork]
[user gentoo-ev]
[repository gentoo/blender-gentoo-logo]
[repository gentoo/blender-gentoo-logo-overlay]
[repository gentoo/eassign]
[repository gentoo/elogv]
[repository gentoo/fetchcommandwrapper]
[repository gentoo/grub2-themes-overlay]
[repository gentoo/porticron]
-------------------------------------------------------------------
Usage (`--help` output)
-----------------------
-------------------------------------------------------------------
# backup-my-hub --help
usage: backup-my-hub [-h] [--config FILE] [--user USER] [--verbose]
[--api-token TOKEN] [--version]
DIRECTORY
positional arguments:
DIRECTORY Local directory to sync repositories and gists to
optional arguments:
-h, --help show this help message and exit
--config FILE Configuration file to use (default: ~/.config/backup-my-
hub/main.cfg, if existing)
--user USER GitHub user name; if given, configured users and
repositories are ignored
--verbose Increase verbosity
--api-token TOKEN Authenticate to the API server (e.g. to push rate limits)
--version show program's version number and exit
-------------------------------------------------------------------
Alternatives
------------
If you are looking for software doing _similar_ things but in _different_ ways, there are:
* https://github.com/kennethreitz/ghsync[ghsync]
* https://github.com/swdyh/gisty[gisty]
* https://github.com/knu/github-sync[github-sync] (of knu)
* https://github.com/adw0rd/github-sync[github-sync] (of adw0rd), fork of https://github.com/kennethreitz/ghsync[ghsync]
* https://github.com/jmhobbs/github-watcher[github-watcher]