Introduction
Confgit is a Git overhead for version control of your config files. The main difference between confgit and any other config file version system is its simplicity. It makes version control and migration of config files safe and easy.
How does it work?
With confgit, you do not have to learn anything new, you only need to set up a directory where confgit will copy all files you register. After setup, you will have all your config files centralized in one directory where you can edit and maintain your config files with Git.
Features
Centralization: Manage files across multiple directories in one directory
Version control: Track config files with Git without turning your entire filesystem into a Git repository
Import/Export: Git allows you to easily push or clone your config files to and from a remote server to archive and share
Introduction
Confgit is a Git overhead for version control of your config files. The main difference between confgit and any other config file version system is its simplicity. It makes version control and migration of config files safe and easy.
How does it work?
With confgit, you do not have to learn anything new, you only need to set up a directory where confgit will copy all files you register. After setup, you will have all your config files centralized in one directory where you can edit and maintain your config files with Git.
Features
Centralization: Manage files across multiple directories in one directory
Version control: Track config files with Git without turning your entire filesystem into a Git repository
Import/Export: Git allows you to easily push or clone your config files to and from a remote server to archive and share
Table of Contents
Installation Guide
Clone repository
cd
into a directory where you want to install confgit.
git clone https://github.com/yagarea/confgit/
Install dependencies
cd confgit
pip install -r requirements.txt
Make alias
Making an alias makes usage much easier. I highly recommend it.
fish
function confgit
python /absolute/path/to/confgit/main.py $argv
end
funcsave confgit
bash
Add the following line to your ~/.bashrc
file:
alias confgit="python absolute/path/to/main.py"
Then run source ~/.bashrc
to load the new alias.
Commands
Global Options
-h
, --help
Prints the synopsis and a brief description of confgit
.
If used with a command, prints a description of that command along with its options.
-c <config-path>
, --config <config-path>
Executes commands using the specified config.
Defaults to confgit.yml
in the current directory.
--debug
Show additional information for debugging.
confgit init
Initialize an empty git repository for your config files in current directory and generates a confgit config file
confgit include
Add a file or a directory into a confgit index
confgit exclude
Explicitly exclude a file or directory from a confgit index
confgit sync
Write contents of complementary files of indexed files to their origins
confgit update
Write contents of origins of indexed files to their complementary files.
confgit backup
Create a zip archive backup of all files in the confgit repository