devconfsync helps you backup your favorite developer settings.
python3.7 devconfsync/main.py -c config.jsonYou can use the config.json under sample folder to get started.
Refer sample/config.json for details.
"destination" -> This needs to be a git repository with remote added.
"tools" -> devconfsync provides support to backup the configuration files for the following tools (as of today). Refer devconfsync/popular.py for the supported tools.
1. zsh
2. git
3. vscode
4. tmux
5. bash
"files" -> Any other files which are not covered by the list above.
devconfsync uses gitpython. It basically does the following (as of today).
- Check if destination path is a git repo. If no fail.
- Check if the git repo is dirty.
- If yes, add all changes (equivalent of
git add --allis used). - Make a commit.
- Push changes to remote.