dot is a git wrapper for managing dotfiles
Project description
dot
dot
is a git wrapper for managing dotfiles
Installation
pip install dotfile
How it works
The basics of dot
is that it runs this git command:
git --git-dir=$HOME/.dotfiles --work-tree=$HOME
You can easily specify where your git-dir is and what your work-tree is with dot
.
Why use dot
instead of aliasing this command?
dot
comes with a few handy custom git commands that are specific with managing dotfiles.
dot cwf
(short for commit-with-filenames) will create a nice commit message showing which files you added/deleted/modified. You can also add your own description with the-m
flag.dot s
status of tracked files onlydot au
add/update currently tracked filesdot list
list all currently tracked files
Usage
To setup your dotfile repository, run dot init
and it will walk you through the setup.
You can setup a new repository, or use an existing repository already on your machine.
New repository setup
[~]$ dot init
===== dotfile setup =====
Choose how you want to initialize your dotfiles:
[0] Create new dotfile repository
[1] Use existing dotfile repository
> 0
New repository setup
--------------------
Repository name: [.dotfiles]
Default work tree: [/Users/kyle]
Generated configs: /Users/kyle/.config/dot/config.toml
[dot]
git-dir=/Users/kyle/.dotfiles/.git
work-tree=/Users/kyle
Do you wish to continue? (y/n [y]) y
Created config file at /Users/kyle/.config/dot/config.toml
Initialized empty Git repository in /Users/kyle/.dotfiles/.git/
Dotfile repository created at /Users/kyle/.dotfiles
Existing repository setup
[~]$ git clone https://github.com/kylepollina/.dotfiles
Cloning into '.dotfiles'...
remote: Enumerating objects: 65, done.
remote: Counting objects: 100% (65/65), done.
remote: Compressing objects: 100% (45/45), done.
remote: Total 2101 (delta 39), reused 43 (delta 20), pack-reused 2036
Receiving objects: 100% (2101/2101), 1.18 MiB | 1.89 MiB/s, done.
Resolving deltas: 100% (577/577), done.
[~]$
[~]$ dot init
===== dotfile setup =====
Choose how you want to initialize your dotfiles:
[0] Create new dotfile repository
[1] Use existing dotfile repository
> 1
Existing repository setup
-------------------------
Repository name: .dotfiles
Work tree directory: [/Users/kyle]
Generated configs: /Users/kyle/.config/dot/config.toml
[dot]
git-dir=/Users/kyle/.dotfiles/.git
work-tree=/Users/kyle
Do you wish to continue? (y/n [y]) y
Created config file at /Users/kyle/.config/dot/config.toml
Dotfiles setup at /Users/kyle/.dotfiles
Analyzing dotfile repository...
There is 2 files and 0 directories in /Users/kyle/.dotfiles
Files
-----
.zprofile
.bash_profile
Would you like to move these into your work tree? (y/n [y]) y
Moving file /Users/kyle/.dotfiles/.zprofile to /Users/kyle
overwrite /Users/kyle/.zprofile? (y/n [n]) y
/Users/kyle/.dotfiles/.zprofile -> /Users/kyle/.zprofile
Moving file /Users/kyle/.dotfiles/.bash_profile to /Users/kyle
overwrite /Users/kyle/.bash_profile? (y/n [n]) n
not overwritten
License
MIT License
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
dotfile-0.9.0.tar.gz
(6.1 kB
view details)
Built Distribution
File details
Details for the file dotfile-0.9.0.tar.gz
.
File metadata
- Download URL: dotfile-0.9.0.tar.gz
- Upload date:
- Size: 6.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | cab49c401174a076a487e49b1579946d71f24f321314c5922b65b7f1647c549c |
|
MD5 | d9f18d1865a535f70ffef224038f0be9 |
|
BLAKE2b-256 | c53b8107ffccdb2e8b81711a63aa5877cbe3a4d2e466d7b3831691c58c2bf2fe |
File details
Details for the file dotfile-0.9.0-py3-none-any.whl
.
File metadata
- Download URL: dotfile-0.9.0-py3-none-any.whl
- Upload date:
- Size: 8.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5cb3dfe8489b4b62088555a0cce62aaa3797cc76d7b196a56d2ec915524fb3c0 |
|
MD5 | bc6527e7678718fab64dbd4544362540 |
|
BLAKE2b-256 | 1e8097aabdf903e1005d7d13de31628c1dce55dce85b1d08946e7134aedb8301 |