]>
git.madduck.net Git - code/vcsh.git/blobdiff - doc/vcsh.1.ronn
madduck's git repository
Every one of the projects in this repository is available at the canonical
URL git://git.madduck.net/madduck/pub/<projectpath> — see
each project's metadata for the exact URL.
All patches and comments are welcome. Please squash your changes to logical
commits before using git-format-patch and git-send-email to
patches@ git. madduck. net .
If you'd read over the Git project's submission guidelines and adhered to them,
I'd be especially grateful.
SSH access, as well as push access can be individually
arranged .
If you use my repositories frequently, consider adding the following
snippet to ~/.gitconfig and using the third clone URL listed for each
project:
[url "git://git.madduck.net/madduck/"]
insteadOf = madduck:
-vcsh(1) - manage and sync config files via git
-==============================================
+vcsh(1) - manage config files in $HOME via fake bare git repositories
+=====================================================================
+`vcsh` clone <url> [<repo>]
-`vcsh` clone <url> [<location>]
-`vcsh` run <foo> git command
+`vcsh` enter <repo>
+
+`vcsh` help
+
+`vcsh` init <repo>
+`vcsh` list-tracked
+
+`vcsh` list-tracked-by <repo>
+
+`vcsh` rename <repo> <newname>
+
+`vcsh` run <repo> <command>
+
+`vcsh` setup <repo>
+
+`vcsh` write-gitignore <repo>
+
+`vcsh` <repo> <gitcommand>
+
+`vcsh` <repo>
A sample configuration for `vcsh` and `mr` can be found at
*https://github.com/RichiH/vcsh_mr_template*
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 <repo>.
+This is needed to support mr and other scripts properly and of no concern to
+an interactive user.
+
+* clone:
+ Clone an existing repository.
+
+* delete:
+ Delete an existing repository.
+
+* enter:
+ Enter repository; spawn new <$SHELL>.
+
+* help:
+ Display help.
+
* init:
Initialize an empty repository.
* 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.
* 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 <repo>
+ it accepts <path>, 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/<repo> from git ls-file s.
+* setup :
+ Set up repository with recommended setting s.
+* write-gitignore:
+ Write .gitignore.d/<repo> via git ls-files.
+
+* <repo> <gitcommand>:
+ Shortcut to run `vcsh` on a repo. Will prepend `git` to <command> by itself.
+
+* <repo>:
+ Shortcut to run `vcsh enter <repo>`.
## ENVIRONMENT
As noted earlier, `vcsh` will set <$GIT_DIR> and <$GIT_WORK_TREE> to the
appropriate values for fake bare git repositories.
## 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 <README.md>. 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 </usr/share/doc/vcsh>.
+
## SECURITY CONSIDERATIONS
`vcsh` allows you to execute arbitrary commands via `vcsh` run. For example,
## 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.