X-Git-Url: https://git.madduck.net/code/vcsh.git/blobdiff_plain/2a61549feb63117b5ffaa6fef5f80feb293b3dbe..6bce32ed343b00a6e08916722811269b0a48632b:/doc/vcsh.1.ronn diff --git a/doc/vcsh.1.ronn b/doc/vcsh.1.ronn index 2705377..9e37ca1 100644 --- a/doc/vcsh.1.ronn +++ b/doc/vcsh.1.ronn @@ -1,19 +1,36 @@ -vcsh(1) - manage and sync config files via git -============================================== +vcsh(1) - manage config files in $HOME via fake bare git repositories +===================================================================== ## SYNOPSIS -`vcsh` init +`vcsh` clone [] -`vcsh` clone [] +`vcsh` delete -`vcsh` run git command +`vcsh` enter + +`vcsh` help + +`vcsh` init `vcsh` list -`vcsh` seed-gitignore +`vcsh` list-tracked + +`vcsh` list-tracked-by + +`vcsh` rename + +`vcsh` run + +`vcsh` setup + +`vcsh` write-gitignore + +`vcsh` + +`vcsh` -`vcsh` help ## DESCRIPTION @@ -33,36 +50,83 @@ vcsh. That being said, you can easily use `vcsh` without `mr` if you prefer. A sample configuration for `vcsh` and `mr` can be found at *https://github.com/RichiH/vcsh_mr_template* +Please note that you can always use a path instead of a name for . +This is needed to support mr and other scripts properly and of no concern to +an interactive user. + ## OPTIONS +* clone: + Clone an existing repository. + +* delete: + Delete an existing repository. + +* enter: + Enter repository; spawn new <$SHELL>. + +* help: + Display help. + * init: Initialize an empty repository. -* clone: - Clone an existing repository. +* list: + List all local vcsh repositories. + +* list-tracked: + List all files tracked by vcsh. + +* list-tracked-by: + List files tracked by a repository. + +* rename: + Rename a repository. * run: Run command with <$GIT_DIR> and <$GIT_WORK_TREE> set. Allows you to run any and all commands without any restrictions. Use with care. -* list: - List all local vcsh repositories. + Please note that there is a somewhat magic feature for run. Instead of + it accepts , as well. Anything that has a slash in it will be assumed to + be a path. `vcsh run` will then operate on this directory instead of the one + normally generated from the repository's name. + This is needed to support mr and other scripts properly and of no concern to + an interactive user. -* seed-gitignore: - Seed .gitignore.d/ from git ls-files. +* setup: + Set up repository with recommended settings. -* help: - Display help. +* write-gitignore: + Write .gitignore.d/ via git ls-files. + +* : + Shortcut to run `vcsh` on a repo. Will prepend `git` to by itself. + +* : + Shortcut to run `vcsh enter `. ## ENVIRONMENT As noted earlier, `vcsh` will set <$GIT_DIR> and <$GIT_WORK_TREE> to the appropriate values for fake bare git repositories. +## DETAILED HOWTO AND FURTHER READING + +Man pages are intended to be short and thus often useless to glean best +practices from. This software comes with a file called . It contains +various approaches to setting up and using vcsh. You can view the file it as +plain text or render it into various other formats via Markdown. + +On Debian-based systems, this file can be found in . + ## SECURITY CONSIDERATIONS `vcsh` allows you to execute arbitrary commands via `vcsh` run. For example, -speaking, adding a `sudo`(8) rule for `vcsh` would be pretty stupid. +adding a `sudo`(8) rule for `vcsh` would be pretty stupid. + +Additionally, vcsh will source, i.e. execute, <$XDG_CONFIG_HOME/vcsh/config>. +You can put any and all commands into this config file and they will be executed. ## BUGS