Passer au contenu principal

Gérer les dotfiles

Source : jesuswasrasta/dotfiles - How I take care of my personal dotfiles.
Les commandes sont ± propres à oh-my-zsh.

Création du repo nu

git init --bare $HOME/.dotfiles
Dépôt Git vide initialisé dans /Users/mickael/.dotfiles/

Alias propre à ce nouveau repo

echo "# –> Git for Dotfiles\nalias dfg='/usr/bin/git --git-dir=$HOME/.dotfiles/ --work-tree=$HOME'" >> $ZSH_CUSTOM/aliases.zsh
sed -i '' -e 's#/Users/mickael#$HOME#g' $ZSH_CUSTOM/aliases.zsh
omz reload

Configuration du repo

dfg config --local status.showUntrackedFiles no
dfg config --local core.excludesFile=.dotfilesignore
dfg remote add origin git@forge.tedomum.net:mickge/my-dotfiles-macbook.git

Ajouter des fichiers au repo

dfg add .zshrc
dfg commit -m "Add zshrc"
dfg push -u origin main
dfg add .gitconfig .gitignore_global 
dfg commit -m "Add gitconfig gitignore_global"
dfg push

Vérifier les commits

dfg log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ar) %C(bold blue)<%an>%Creset' --stat

Exemple de .dotfilesignore

Très franchement, je ne suis pas sûr de l'utilité de ce fichier… Je l'ai fait après.

# Ignore everything
*

#############
# Except... #
#############

# zsh
!.zshrc
!.zsh_aliases

# vim & gvim
!.vimrc
!.gvimrv

# tmux
!.tmux.conf

# git
!.gitconfig
!.gitignore_global