X-Git-Url: https://git.madduck.net/code/vcsh.git/blobdiff_plain/034e25b7c4de8e60676f9a9ed7cd085a083083a9..938ee6f6bb1384a4c57556fd9be62ebf278c8114:/README.md?ds=inline diff --git a/README.md b/README.md index d761c82..f30545d 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -vcsh - manage and sync config files via git +vcsh - manage config files in $HOME via fake bare git repositories # Index # @@ -83,6 +83,7 @@ To illustrate, this is what a possible directory structure looks like. | | |-- tmux.vcsh -> ../available.d/tmux.vcsh | | `-- vim.vcsh -> ../available.d/vim.vcsh | `-- vcsh + | |-- config | `-- repo.d | |-- zsh.git -----------+ | |-- gitconfigs.git | @@ -90,7 +91,8 @@ To illustrate, this is what a possible directory structure looks like. | `-- vim.git | |-- [...] | |-- .zshrc <----------------------+ - |-- .gitignore + |-- .gitignore.d + | `-- zsh |-- .mrconfig `-- .mrtrust @@ -150,11 +152,13 @@ To illustrate further, the following steps could move your desired configuration to a new host. 1. Clone the mr repository (containing available.d, config.d etc.); for - example: `vcsh clone git://github.com/RichiH/vcsh_mr_template.git` + example: `vcsh clone git://github.com/RichiH/vcsh_mr_template.git mr` 2. Choose your repositories by linking them in config.d (or go with the default you may have already configured by adding symlinks to git). -3. Run mr to clone the repositories: `cd; mr update`. -4. Done. +3. Make sure the line 'include = cat /usr/share/mr/vcsh' in .mrconfig points + to an existing file +4. Run mr to clone the repositories: `cd; mr update`. +5. Done. Hopefully the above could help explain how this approach saves time by @@ -179,7 +183,7 @@ Below, you will find a few different methods for setting up vcsh: Make sure none of the following files and directories exist for your test (user). If they do, move them away for now: -* ~/.gitignore +* ~/.gitignore.d * ~/.mrconfig * $XDG_CONFIG_HOME/mr/available.d/mr.vcsh * $XDG_CONFIG_HOME/mr/available.d/zsh.vcsh @@ -193,13 +197,15 @@ the template will be stored. #### 4.1.2 Clone the Template #### + cd $HOME mkdir -p ~/work/git - cd !$ git clone git://github.com/RichiH/vcsh.git vcsh + # make sure 'include = cat /usr/share/mr/vcsh' points to an exiting file + vim .mrconfig cd vcsh - ln -s vcsh /usr/local/bin # or add it to your PATH + ln -s vcsh /usr/local/bin # or add it to your PATH cd - vcsh clone git://github.com/RichiH/vcsh_mr_template.git mr.vcsh + vcsh clone git://github.com/RichiH/vcsh_mr_template.git mr #### 4.1.3 Enable Your Test Repository #### @@ -234,7 +240,9 @@ Done! You're welcome to clone the example repository: - git clone git://github.com/RichiH/vcsh_mr_template.git + vcsh clone git://github.com/RichiH/vcsh_mr_template.git mr + # make sure 'include = cat /usr/share/mr/vcsh' points to an exiting file + vim .mrconfig Look around in the clone. It should be reasonably simple to understand. If not, poke me, RichiH, on Freenode (query) or OFTC (#vcs-home). @@ -265,6 +273,8 @@ mr is used to actually retrieve configs, etc ~ % cat ~/.mrconfig [DEFAULT] + # adapt /usr/share/mr/vcsh to your system if needed + include = cat /usr/share/mr/vcsh include = cat $XDG_CONFIG_HOME/mr/config.d/* ~ % echo $XDG_CONFIG_HOME /home/richih/.config