rewrote readme
This commit is contained in:
parent
73118647f9
commit
ad137d531d
47
README.md
47
README.md
@ -1,16 +1,49 @@
|
||||
```
|
||||
git init --bare $HOME/.dotfiles
|
||||
---
|
||||
title: "Dotfiles With Git"
|
||||
date: 2020-04-29T13:26:01+02:00
|
||||
draft: true
|
||||
tags:
|
||||
- bash
|
||||
- git
|
||||
- dotfiles
|
||||
---
|
||||
# Simple way to manage dotfiles with git
|
||||
I use a very simple way to manage my dotfiles with git and some bash aliases.
|
||||
All you have to create a folder for your git repository in your home folder and initiate a bare git repository
|
||||
```bash
|
||||
mkdir "$HOME/.dotf
|
||||
git init --bare $HOME/.dotf
|
||||
```
|
||||
|
||||
Then create an alias so you don't have to write a long command each time you want to add a file or configure your git repository, don't forget to add that alias to $HOME/.alias
|
||||
```bash
|
||||
alias dotf='/usr/bin/git --git-dir=$HOME/.dotf --work-tree=$HOME'
|
||||
```
|
||||
alias dotfiles='/usr/bin/git --git-dir=$HOME/.dotfiles --work-tree=$HOME'
|
||||
so, that alias is calling git and sets the repository as well as working directory and it can be called from what ever path you currently be in.
|
||||
|
||||
The next thing we need to do is to configure the repository to not show untracked files and only care about the files we specifically want to manage.
|
||||
```bash
|
||||
dotf config --local status.showUntrackedFiles no
|
||||
```
|
||||
|
||||
```
|
||||
dotfiles config --local status.showUntrackedFiles no
|
||||
Now you just use the dotfiles alias for git to add files, commit changes, etc, etc
|
||||
```bash
|
||||
dotf add .alias .bashrc
|
||||
dotf commit -m "Added .alias and .bashrc"
|
||||
```
|
||||
|
||||
To show the status of the repository
|
||||
```bash
|
||||
dotf status
|
||||
```
|
||||
dotfiles add .bashrc
|
||||
dotfiles commit -m ".bashrc added"
|
||||
|
||||
if you want to add some bash completion to dotf you can just add the following line to your .bashrc
|
||||
```
|
||||
[[ "$(type -t dotf)" == "alias" ]] && [[ "$(type -t __git_complete)" == "function" ]] && __git_complete dotf _git
|
||||
```
|
||||
|
||||
If you want you can add a remote repository make sure that it's secure if you manage sensitive information.
|
||||
```bash
|
||||
dotf remote add origin <username>@git.domain.tld/dotfiles.git
|
||||
dotf push
|
||||
```
|
||||
|
Loading…
Reference in New Issue
Block a user