-
Notifications
You must be signed in to change notification settings - Fork 201
Full Documentation
Besides the README.md
and .gitignore
, there are four files/directories in the base branch.
-
bin/dfm
- The main utility for managing (installing/updating/uploading) dotfiles. -
.dfminstall
- This is a config file for whendfm install
is run. -
.bashrc.load
- This file is the bootstrap file for loading any shell customizations. The default only makes sure$HOME/bin
is in the path so thatdfm
can be run easily. This file is loaded becausedfm
puts the following line at the end of.bashrc
on install:. $HOME/.bashrc.load
-
t
- Tests for thedfm
utility.
dfm
stands for Dot File Manager. The name was chosen because the best commands (like svn
or git
) are only three characters.
Running dfm
is like running git
. There are subcommands, like install
and updates
that perform different functions. Each subcommand has it's own set of options and there are also options that apply to all subcommands.
The main reason for dfm
to exist is to install dotfiles. This is done with the install
subcommand. Running dfm install
will go through all the files and directories in the repository and install them in $HOME
using symlinks.
You can control what files are skipped and installed by adding .dfminstall
files in your repository. For instance, the default .dfminstall file has the following contents:
README.md skip
t skip
Meaning that both README.md
and t
will be skipped when running dfm install
.
Here are the subcommands that are currently defined:
-
install
- this installs everything in the repo into$HOME
using symlinks -
updates
- this fetches any new changes from theorigin
remote -
mergeandinstall
ormi
- this merges any new changes and re-runsdfm install
- anything else is interpreted as a git subcommand and in run in the dotfiles repository. For instance, running
dfm status
is the same as runningcd ~/.dotfiles; git status; cd -
, but easier.