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-mflag.dot sstatus of tracked files onlydot auadd/update currently tracked filesdot listlist 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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
|