diff options
author | Luke Shumaker <LukeShu@sbcglobal.net> | 2009-07-13 15:46:14 -0400 |
---|---|---|
committer | Luke Shumaker <lukeshu@sbcglobal.net> | 2015-06-26 00:30:11 -0600 |
commit | 1f75a1dff61a33dea973ebeea64a3bd8bccb715a (patch) | |
tree | 841f8b9fa2a1e7f0d42413eb7a1afd3911ef7eba /README | |
parent | 3cdfa2a24cd8279ab5d5204d598f319b175940f2 (diff) |
add README, HACKING, and other documentation
Diffstat (limited to 'README')
-rw-r--r-- | README | 72 |
1 files changed, 72 insertions, 0 deletions
@@ -0,0 +1,72 @@ +////////////////////////////////////////////////////////////////////// + rvs - retroactive versioning system + versioning system that allows you to check + in commit 2 before commit 1 +////////////////////////////////////////////////////////////////////// + +CONTENTS: + 1 ) Introduction + 2 ) Building + 2.1 ) configuration + +////////////////////////////////////////////////////////////////////// +== 1: Introduction +The name is a little bit of a nod to RCS (revision control system), +and even less to CVS. I'm not particularly fond of CVS, but recognize +it's impact on the scm scene. + +rvs is about being able to go back and edit *anything* that has +already been committed. Yes, some other SCMs do this, but fuck things +proper if someone else has a copy of the old version. + +Why would you want to do this? Take for example the Bazaar repository +rvs is hosted on: It starts at 0.6.0, what if I later want to import +0.0.0 - 0.5.10? Or if I'm trying to construct a history of BSD, +and import all the BSDs I can find, such as 1,3,4, then latter find 2? + +== 2: Building +rvs doesn't exactly use the GNU build system, but acts much like it +does. To build rvs with default configuration, simply run: + $ ./configure + $ make + # make install +It's generally considered good practice to build in another directory +than the source directory, however, this is not the case fo rvs. In +fact, it must be build in the source directory. You needn't be +worried about it making the source direcotory messy, all source is +kept in `DIR/source', all finished files in `DIR/out', and all +temporary build files in `DIR/tmp'. + +=== 2.1: Configuration +There are several configuration variables that can be set. The default +values are kept in the file `Variables'. + +Variables is in the format `VAR_NAME<tab>VALUE'. You can modify these +configuration variables by editing the `Variables' file directly, or +by running ./configure such as: + $ ./configure --VAR_NAME=VALUE + +The different configuration variables are as follows: +VER value='0.6.0' + rvs's internal varsion number +SHELL value='/usr/bin/env bash' + the shell that scripts will be run in. +prefix value="$HOME" + where the files will be installed. For me the defualt is + `/home/luke'. Many of you will want to change this to '/usr' +bindir value='bin' + the binaries folder inside the prefix. If I leave the prefix + and bindir the same, for me rvs is installed in + `/home/luke/bin'. If I change prefix to '/usr', then rvs will + be installed in `/usr/bin' +libdir value='/etc/rvs/' + where the rvs libraries will be installed. + in rvs almost nothing is actually done int the core binary + ([$prefix]/[$bindir]/rvs) but option handling. All the real + work is done in modular sub-programs. I call them libraries, + even though they are independend programs that communicate via + pipes. + +~ Luke Shumaker <LukeShu@sbcglobal.net> +Happy Hacking! + |