diff --git a/.mailmap b/.mailmap new file mode 100644 index 0000000000000000000000000000000000000000..bf0849747acfe4687d71d559c5a39af6380c690d --- /dev/null +++ b/.mailmap @@ -0,0 +1 @@ +Richard Hartmann <richih.mailinglist@gmail.com> <richih+github.com@richih.org> diff --git a/AUTHORS b/AUTHORS index 5e52a9df220eb79795dd53e7816bf68ba2cba103..e6c3f11e2553c66b4a828e88e9ee405a55a2d50e 100644 --- a/AUTHORS +++ b/AUTHORS @@ -1,7 +1,7 @@ Alphabetical list of everyone who ever committed to this repository Vincent Demeester <vincent@demeester.fr> -Richard Hartmann <richih+github.com@richih.org> +Valentin Haenel <valentin.haenel@gmx.de> Richard Hartmann <richih.mailinglist@gmail.com> Dieter Plaetinck <dieter@plaetinck.be> Corey Quinn <corey@sequestered.net> diff --git a/Makefile b/Makefile index a52e9edf49b4996a99dad1658c93c9c19a12b1b7..cb112c72b619dec628d167f17f75630a99bb34fd 100644 --- a/Makefile +++ b/Makefile @@ -43,4 +43,4 @@ test: if which git > /dev/null ; then :; else echo "'git' not found, exiting..."; exit 1; fi moo: - if [ -x /usr/games/cowsay ]; then /usr/games/cowsay "I hope you're happy now..."; fi + @if [ -x /usr/games/cowsay ]; then /usr/games/cowsay "I hope you're happy now..."; fi diff --git a/PACKAGING b/PACKAGING new file mode 100644 index 0000000000000000000000000000000000000000..16eaed8134415a3c800fbf1ee7c97b5709565a36 --- /dev/null +++ b/PACKAGING @@ -0,0 +1,18 @@ +# Archlinux + +AUR does not require any packaging information within this repository. + +# Debian + +Debian packages are provided by the author in separate branches, maintained in +the upstream repository + +## Ubuntu + +Ubuntu imports Debian's package automagically. + +# Anything else + +If you are maintaining a package for a different distribution, please get +in touch so your work can be included in another branch, thus allowing others +to adapt it to their needs or to improve it. diff --git a/README.md b/README.md index c0585d237617259e167c1ca5670d5d4c831a9bc8..66db1106b82582cc3e0b4bf50b97ddbb1a551c35 100644 --- a/README.md +++ b/README.md @@ -35,6 +35,11 @@ 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. +## 2.1 Talks ## + +Some people found it useful to look at slides and videos explaining how vcsh works. +They can all be found at [here](http://richardhartmann.de/talks/). + # 3 Overview ## 3.1 Comparison to Other Solutions ## @@ -197,19 +202,48 @@ the template will be stored. apt-get install mr -#### 4.1.2 Clone the Template #### +#### 4.1.2 Install vcsh #### + +#### 4.1.2.1 Debian #### + +If you are using Debian Squeeze, you will need to enable backports + + apt-get install vcsh + +#### 4.1.2.2 Arch Linux #### + +vcsh is availabe via [AUR](https://aur.archlinux.org/packages.php?ID=54164) +and further documentation about the use of AUR is available +[on Arch's wiki](https://wiki.archlinux.org/index.php/Arch_User_Repository). + + cd /var/abs/local/ + wget https://aur.archlinux.org/packages/vc/vcsh-git/vcsh-git.tar.gz + tar xfz vcsh-git.tar.gz + cd vcsh-git + makepkg -s + pacman -U vcsh*.pkg.tar.xz + +#### 4.1.2.3 From source #### +If your version of mr is older than version 1.07, make sure to put + + include = cat /usr/share/mr/vcsh + +into your .mrconfig . + + # choose a location for your checkout cd $HOME mkdir -p ~/work/git - git clone git://github.com/RichiH/vcsh.git vcsh - # make sure 'include = cat /usr/share/mr/vcsh' points to an exiting file - vim .mrconfig + git clone git://github.com/RichiH/vcsh.git cd vcsh ln -s vcsh /usr/local/bin # or add it to your PATH cd + +#### 4.1.3 Clone the Template #### + vcsh clone git://github.com/RichiH/vcsh_mr_template.git mr -#### 4.1.3 Enable Your Test Repository #### +#### 4.1.4 Enable Your Test Repository #### mv ~/.zsh ~/zsh.bak mv ~/.zshrc ~/zshrc.bak @@ -218,7 +252,7 @@ the template will be stored. cd mr up -#### 4.1.4 Set Up Your Own Repositories #### +#### 4.1.5 Set Up Your Own Repositories #### Now, it's time to edit the template config and fill it with your own remotes: diff --git a/changelog b/changelog index bfc4d24064c924d5c6d9bf4659d91a73279e146d..52c7ed22c8523df1d9f2e401f481216672df0bf6 100644 --- a/changelog +++ b/changelog @@ -1,3 +1,10 @@ +2012-06-30 Richard Hartmann <richih.mailinglist@gmail.com> + + * Release 1.0 + * Make `vcsh list` more resilient + * Lots of doc improvements + + 2012-02-27 Richard Hartmann <richih.mailinglist@gmail.com> * Refactor Makefile diff --git a/doc/vcsh.1.ronn b/doc/vcsh.1.ronn index 76ae2a50920cb57db994787ada87f9ba5cb1e38a..0fbead9a78c4f30ce0e1d02680a913249c49dbf7 100644 --- a/doc/vcsh.1.ronn +++ b/doc/vcsh.1.ronn @@ -160,6 +160,12 @@ You can put any and all commands into this config file and they will be executed None are known at this time, but reports and/or patches are more than welcome. +## KNOWN ISSUES + +As of this writing (June 2012), `vcsh` does not work with `git submodule` due +to limitations within `git`. Depending on when you are reading this, you might +want to consider upgrading. + ## HISTORY Like most people, the author initially made do with a single repository for all diff --git a/tools/list_AUTHORS b/tools/list_AUTHORS index 2b91ac97945b45ad539e2d00882c6b864009671e..351820564a77614b5b10f335d38cf5ba549d76fa 100755 --- a/tools/list_AUTHORS +++ b/tools/list_AUTHORS @@ -2,4 +2,4 @@ echo 'Alphabetical list of everyone who ever committed to this repository ' -git log --all --format='%an <%ae>' | sort -u -k2 +git shortlog -se --all | cut -f1 --complement | sort -u -k2 diff --git a/vcsh b/vcsh index ba0049e542120cf4931ce3652b9b412808bef2b4..358135a48ed814b63218d0fef0b6a68023afae0e 100755 --- a/vcsh +++ b/vcsh @@ -5,6 +5,11 @@ # For details, see LICENSE. To submit patches, you have to agree to # license your code under the GNU GPL version 2 or later. +# While the following is not legally binding, the author would like to +# explain the choice of GPLv2+ over GPLv3+. +# The author prefers GPLv3+ over GPLv2+ but feels it's better to maintain +# full compability with git. In case git ever changes its licensing terms, +# this software will most likely follow suit. [ -n "$VCSH_DEBUG" ] && set -vx [ -z "$XDG_CONFIG_HOME" ] && XDG_CONFIG_HOME="$HOME/.config" @@ -22,9 +27,9 @@ help() { clone <remote> \\ [<repo>] Clone from an existing repository - help Display this help text delete Delete an existing repository enter Enter repository; spawn new instance of \$SHELL + help Display this help text init <repo> Initialize a new repository list List all repositories list-tracked List all files tracked by vcsh @@ -133,8 +138,8 @@ init() { } list() { - for i in "$VCSH_REPO_D"/*.git; do - echo $(basename "$i" .git) + for repo in "$VCSH_REPO_D"/*.git; do + [ -d "$repo" ] && [ -r "$repo" ] && echo $(basename "$repo" .git) done }