X-Git-Url: https://git.madduck.net/code/vcsh.git/blobdiff_plain/1d10edf74d7cad91e39f62d08585342b1ea57c57..c3ead3b6011c379ca5038b9a73ec8be824dd422b:/INSTALL.md diff --git a/INSTALL.md b/INSTALL.md index f61166f..16db617 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -1,6 +1,6 @@ # Getting started with vcsh # -Below you will find a few different methods for setting up vcsh: +Below, you will find a few different methods for setting up vcsh: 1. The template way 2. The steal-from-template way @@ -9,9 +9,10 @@ Below you will find a few different methods for setting up vcsh: # 1. The template way # -## Prerequisites ## +## 1.1 Prerequisites ## -Make sure none of the following files/diretories exist for your test (user). If they do, move them away for now: +Make sure none of the following files/diretories exist for your test (user). If +they do, move them away for now: * ~/.gitignore * ~/.mrconfig @@ -20,11 +21,12 @@ Make sure none of the following files/diretories exist for your test (user). If * ~/.config/mr/config.d/mr.vcsh * ~/.config/vcsh/repo.d/mr.git/ -All of the files are part of the template repository, the directory is where the template will be stored. +All of the files are part of the template repository, the directory is where +the template will be stored. apt-get install mr # this is optional, but highly recommended -## Clone the template ## +## 1.2 Clone the template ## mkdir -p ~/work/git cd !$ @@ -34,7 +36,7 @@ All of the files are part of the template repository, the directory is where the cd vcsh clone git://github.com/RichiH/vcsh_mr_template.git mr.vcsh -## Enable your test repository ## +## 1.3 Enable your test repository ## mv ~/.zsh ~/zsh.bak mv ~/.zshrc ~/zshrc.bak @@ -43,7 +45,7 @@ All of the files are part of the template repository, the directory is where the cd mr up -## Set up your own repositories ## +## 1.4 Set up your own repositories ## Now, it's time to edit the template config and fill it with your own remotes: @@ -63,9 +65,9 @@ And then create your own stuff: Done! -## Daily use ## +## 1.5 Daily use ## -### Keeping repositories up-to-date ### +### 1.5.1 Keeping repositories up-to-date ### This is the beauty of it all. Once you are set up, just run: @@ -74,16 +76,18 @@ This is the beauty of it all. Once you are set up, just run: Neat. -### Making changes ### +### 1.5.2 Making changes ### -After you have made some changes, for which you would normally use `git add` and `git commit`, use the vcsh wrapper (like above): +After you have made some changes, for which you would normally use `git add` +and `git commit`, use the vcsh wrapper (like above): vcsh run foo git add -f bar baz quux vcsh run foo git commit vcsh run foo git push -By the way, you'll have to use -f/--force flag with git-add because all files will be ignored by default. This is to show you only useful output when running git-status. -A fix for this problem is being worked on. +By the way, you'll have to use -f/--force flag with git-add because all files +will be ignored by default. This is to show you only useful output when running +git-status. A fix for this problem is being worked on. # 2. The steal-from-template way # @@ -92,12 +96,14 @@ You're welcome to clone the example repository: git clone git://github.com/RichiH/vcsh_mr_template.git -Look around in the clone. It should be reasonably simple to understand. If not, poke me, RichiH, on Freenode (query) or OFTC (#vcs-home). +Look around in the clone. It should be reasonably simple to understand. If not, +poke me, RichiH, on Freenode (query) or OFTC (#vcs-home). # 3. The manual way # -This is how my old setup procedure looked like. Adapt it to your own style or copy mine verbatim, either is fine. +This is how my old setup procedure looked like. Adapt it to your own style or +copy mine verbatim, either is fine. # Create workspace mkdir -p ~/work/git @@ -132,25 +138,26 @@ mr is used to actually retrieve configs, etc # 4. Using vcsh without mr # -vcsh encourages you to use mr. -It helps you manage a large number of repositories by running the necessary vcsh commands for you. -You may choose not to use mr, in which case you will have to run those commands manually or by other means. +vcsh encourages you to use mr. It helps you manage a large number of +repositories by running the necessary vcsh commands for you. You may choose not +to use mr, in which case you will have to run those commands manually or by +other means. -## A few examples ## +## 4.1 A few examples ## To initialize a new repository: `vcsh init zsh` To clone a repository: `vcsh clone ssh:///zsh.git` -To interact with a repository, use the regular Git commands, but prepend them with `vcsh run $repository_name`. -For example: +To interact with a repository, use the regular Git commands, but prepend them +with `vcsh run $repository_name`. For example: vcsh run zsh git status vcsh run zsh git add -f .zshrc vcsh run zsh git commit -Obviously, without mr keeping repositories up-to-date, it will have to be done manually. -Alternatively, you could try something like this: +Obviously, without mr keeping repositories up-to-date, it will have to be done +manually. Alternatively, you could try something like this: for repo in `vcsh list`; do vcsh run $repo git pull;