Add basic info on subcommands to README.md
This commit is contained in:
parent
f337cc8574
commit
dfa0140470
1 changed files with 31 additions and 0 deletions
31
README.md
31
README.md
|
@ -30,3 +30,34 @@ By default, packages are installed by `dots` to `~/dotfiles` and then linked int
|
||||||
need to change this.
|
need to change this.
|
||||||
* `HOME` - the target directory for linking packages. Probably not a good idea
|
* `HOME` - the target directory for linking packages. Probably not a good idea
|
||||||
to change this either.
|
to change this either.
|
||||||
|
|
||||||
|
## Subcommands
|
||||||
|
|
||||||
|
Much like `git` and many other tools, `dots` is based around subcommands for accessing particular functions. The available commands are:
|
||||||
|
|
||||||
|
### `bootstrap`
|
||||||
|
|
||||||
|
Set up dotfiles on a brand-new system. Will create a `DOTFILES` package directory, clone GNU Stow into it if necessary, clone itself and other default packages, and then link everything using Stow. This is the default command if `dots` is run on a system where `DOTFILES` doesn't already exist, leading to the succinct bootstrap snippet shown above.
|
||||||
|
|
||||||
|
### `clone`
|
||||||
|
|
||||||
|
Will clone one or more packages specified into your `DOTFILES` directory. Packages must be specified as Git repository URLs, but two forms of shorthand are supported:
|
||||||
|
|
||||||
|
* GitHub package paths: "sharkdp/bat", "hlandau/acmetool". "https://github.com/" will automatically be prepended to find the correct GitHub repository.
|
||||||
|
* Simple package names: "git", "emacs", "task". The entire `DOTS_SOURCE_PREFIX` is prepended to these names, hopefully producing a URL that points to your self-hosted Git service.
|
||||||
|
|
||||||
|
### `fetch`
|
||||||
|
|
||||||
|
Will simply run `git fetch -p` for each of the specified package names. If there are no package names provided, will implicitly run over *all* packages.
|
||||||
|
|
||||||
|
### `link`
|
||||||
|
|
||||||
|
Will employ GNU Stow to symlink each of the packages specified by name into your `HOME`. If no package names are provided, will implicitly link all packages.
|
||||||
|
|
||||||
|
### `pull`
|
||||||
|
|
||||||
|
Very similar to `fetch`. Will simply run `git pull` for each of the specified package names. If there are no package names provided, will implicitly run over *all* packages.
|
||||||
|
|
||||||
|
### `status`
|
||||||
|
|
||||||
|
Can be abbreviated to `st`. Will list all packages you have cloned into your dotfiles directory, along with their Git status (whether the working directory is clean, whether there are commits to push or pull, that sort of thing). This command is the default if you have already bootstrapped.
|
||||||
|
|
Loading…
Reference in a new issue