X-Git-Url: https://git.madduck.net/code/vcsh.git/blobdiff_plain/c354ae2097f529b341db74e128dbd52df8fd320d..16640312364ca67a5b10c42df739c113c5469913:/README.md diff --git a/README.md b/README.md index 30fde46..8aa3cee 100644 --- a/README.md +++ b/README.md @@ -3,14 +3,40 @@ vcsh - Version Control System for $HOME (based on git) # Index # -1. [30 second howto](#30-second-howto) -2. [Introduction](#introduction) +1. [Introduction](#introduction) +2. [30 second howto](#30-second-howto) 3. [Overview](#overview) 4. [Getting Started](#getting-started) 5. [Usage](#usage) 6. [Contact](#contact) +# Introduction # + +[vcsh][vcsh] allows you to maintain several git repositories in one single +directory. They all maintain their working trees without clobbering each other +or interfering otherwise. By default, all git repositories maintained via +`vcsh` are stored in `$HOME` but you can override this setting if you want to. +All this means that you can have one repository per application or application +family, i.e. `zsh`, `vim`, `ssh`, etc. This, in turn, allows you to clone +custom sets of configurations onto different machines or even for different +users; picking and mixing which configurations you want to use where. +For example, you may not need to have your `mplayer` configuration on a server +or available to root and you may want to maintain different configuration for +`ssh` on your personal and your work machines. + +`vcsh` was designed with [mr][mr], a tool to manage Multiple Repositories, in +mind and the two integrate very nicely. `mr` has native support for `vcsh` +repositories and to `vcsh`, `mr` is just another configuration to track. +This make setting up any new machine a breeze. It takes literally less than +five minutes to go from standard installation to fully set up system + +A lot of modern UNIX-based systems offer pacakges for `vcsh`. In case yours +does not read `INSTALL.md` for install instructions or `PACKAGING.md` to create +a package, yourself. If you do end up packaging `vcsh` please let us know so we +can give you your own packaging branch in the upstream repository. + + # 30 second howto # While it may appear that there's an overwhelming amount of documentation and @@ -23,7 +49,7 @@ Let's say you want to version control your `vim` configuration: vcsh vim add ~/.vimrc ~/.vim vcsh vim commit -m 'Initial commit of my Vim configuration' # optionally push your files to a remote - vcsh vim remote add origin REMOTE + vcsh vim add origin REMOTE vcsh vim push origin master:master If all that looks a _lot_ like standard `git`, that's no coincidence; it's @@ -34,34 +60,10 @@ into more advanced usage scenarios, especially on how to manage your `vcsh` and other repositories with [mr][mr]. -# Introduction # - -[vcsh][vcsh] allows you to maintain several git repositories in one single -directory. They all maintain their working trees without clobbering each other -or interfering otherwise. By default, all git repositories maintained via -`vcsh` are stored in `$HOME` but you can override this setting if you want to. -All this means that you can have one repository per application or application -family, i.e. `zsh`, `vim`, `ssh`, etc. This, in turn, allows you to clone -custom sets of configurations onto different machines or even for different -users; picking and mixing which configurations you want to use where. -For example, you may not need to have your `mplayer` configuration on a server -or available to root and you may want to maintain different configuration for -`ssh` on your personal and your work machines. - -`vcsh` was designed with [mr][mr] in mind so you might want to install that, as -well. - -Read `INSTALL.md` and `PACKAGING.md` for instructions specific to your operating -system. - -The following overview will try to give you an idea of the use cases and -advantages of `vcsh`. See sections 3 and 4 for detailed instructions and -examples. - ## Talks ## Some people found it useful to look at slides and videos explaining how `vcsh` -works. +works instead of working through the docs, first. They can all be found [on the author's talk page][talks].