X-Git-Url: https://git.madduck.net/code/vcsh.git/blobdiff_plain/b32b489829142ea899ed50913fcff931ef051c27..bcca0cb6d41727819fe0e2ced837d322f67972c7:/doc/vcsh.1.ronn diff --git a/doc/vcsh.1.ronn b/doc/vcsh.1.ronn index 56df4ed..cd73ca8 100644 --- a/doc/vcsh.1.ronn +++ b/doc/vcsh.1.ronn @@ -5,7 +5,7 @@ vcsh(1) - Version Control System for $HOME - multiple Git repositories in $HOME `vcsh` [] -`vcsh` clone [] +`vcsh` clone [-b ] [] `vcsh` delete @@ -17,9 +17,9 @@ vcsh(1) - Version Control System for $HOME - multiple Git repositories in $HOME `vcsh` list -`vcsh` list-tracked +`vcsh` list-tracked [] -`vcsh` list-tracked-by +`vcsh` list-untracked [<-r>] [] `vcsh` pull @@ -86,6 +86,9 @@ an interactive user. If you need to clone a bundle of repositories, look into the `post-clone-retired` hook. + You can also use a single git repository with several branches. Use the `-b` + option to specify a branch at clone time, the default is `master`. + * commit: Commit in all repositories @@ -107,9 +110,24 @@ an interactive user. * list-tracked: List all files tracked by vcsh. + If you want to list files tracked by a specific repository, simply + append the repository's name last. + * list-tracked-by: List files tracked by a repository. + This is a legacy command; you should use `list-tracked ` instead. + +* list-untracked: + List all files NOT tracked by vcsh. + + By default, the file list is shallow and stops at directory levels where + possible. If you prefer to get a list of all files, append `-r` for + recursive mode. + + If you want to list files not tracked by a specific repository, simply + append the repository's name last. + * pull: Pull from all vcsh remotes. @@ -171,6 +189,15 @@ executed in the context of your shell. Interesting knobs you can turn: +* <$VCSH_GITATTRIBUTES>: + Can be , or any other value. + + will not maintain Git attributes in a special location. + + If set to any other value, repo-specific gitattributes files will be maintained. + + Defaults to . + * <$VCSH_GITIGNORE>: Can be , , or . @@ -245,6 +272,24 @@ Available hooks are , , , If you need more, vcsh is trivial to patch, but please let upstream know so we can ship them by default. +## OVERLAY SYSTEM + +`vcsh` also provides an overlay system. Similar to hooks, the recommended +locations are <$XDG_CONFIG_HOME/vcsh/overlays-available> and +<$XDG_CONFIG_HOME/vcsh/overlays-enabled>. + +Overlays follow the same rules as hooks and you are free to overwrite any +and all functions. Same as hooks, you can use global or repository-specific +overlays by using either <$VCSH_OVERLAY_D/$VCSH_COMMAND> or +<$VCSH_OVERLAY_D/$VCSH_REPO_NAME.$VCSH_COMMAND>. + +Please note that nothing stops you from, e.g. overwriting `status()` in +<$VCSH_OVERLAY_D/commit>. As the overlays will be sourced and you are +replacing arbitrary functions, any and all features may stop working, or you +may even lose data. + +You have been warned. + ## DETAILED HOWTO AND FURTHER READING Manpages are often short and sometimes useless to glean best practices from.