Skip to content

calfzhou/dotfiles

Repository files navigation

Lots of Configurations

It's time to make as many as possible configuration files under version control.

This can also help me to sync configurations among computers or systems.

About Git Submodules

This repo contains several submodules, to make it simple, use git clone --recursive (or git c if you are using git config provided by this repo).

Otherwise, use git submodule init and git submodule update after a normal clone.

To update all submodules, run git submodule foreach git pull.

About Private Configs

Private or sensitive personal configurations should not be included in public repos.

They are stored in _personal folder, which is ignored by git.

To version control these files, use a private repo and clone it to _personal folder.

cd $DOTFILES_HOME
git clone git@github.com:USER/dotfiles-private _personal

General Usage

Generally speaking, to use these configurations, just create symbol links from cloned folder to the desired destination.

On Linux and MacOS, simply use ln -s TARGET LINK_NAME to create symbol links.

On Windows, there are several ways:

  1. Use junction LINK_NAME TARGET_FOLDER to create junction (soft) link to a folder;
  2. Use ln.exe TARGET_FILE LINK_NAME to create hard link to a file. But the target and link name must be in the same driver.
  3. Use mklink (should run as adiministrator) to create either kind of link:
    1. mklink LINK_NAME TARGET to create a symbol link file.
    2. mklink /d LINK_NAME TARGET to create a symbol link to a folder.
    3. mklink /j LINK_NAME TARGET to create a junction.
    4. mklink /h LINK_NAME TARGET to create a hard link.

About

Configuration files for kinds of tools and systems

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published