0.6.0 • Published 5 years ago
icbm v0.6.0
icbm
CLI tool to manage and backup your configuration files
Prerequisites
- node.js
>= 10
Installation
- npm
npm install -g icbm - yarn
yarn global add icbm
Usage
Add Configurations
- For supported configuration files
icbm add file_name- For not supported configuration files
icbm add your_conf_name /path/to/your_conf- Configurations currently supported
- bash_profile (
$HOME/.bash_profile) - bashrc (
$HOME/.bashrc) - gitconfig (
$HOME/.gitconfig) - vimrc (
$HOME/.vimrc) - zshrc (
$HOME/.zshrc)
- bash_profile (
Remove Configurations
- This action will remove configuration from icbm and return it to original path.
(e.g. remove the symbolic link and return the managed
bash_profileto$HOME/.bash_profile)
icbm remove file_nameUpload Configurations
icbm uploadDownload Configurations
icbm downloadManaging config
- Set config
icbm config set config_name config_value- Get config
icbm config get config_name- Get all configs
icbm config get- Configurations
- Repository Type
repository.type(Only gist is available now) - Gist id
repository.gist(You can set using prompt in uploading and downloading) - Github Token
repository.githubToken(You can set using prompt in uploading. https://github.com/settings/tokens) - Create backup on add
file.createBackup(.bak file will be created on add.trueby default.)
- Repository Type
TODO
- resolve paths in different os and env(like \$HOME)
- multiple repositories to backup configurations
- node api
- rewrite in golang(for standalone app)
- support for other apps (list of formulas like
brew listandbrew cask list)