madcow,

I really like the simplicity of this workflow by StreakyCobra on HN (explained as a blog post here):

I use:

<pre style="background-color:#ffffff;">
<span style="color:#323232;">git init --bare $HOME/.myconf
</span><span style="color:#323232;">alias config='/usr/bin/git --git-dir=$HOME/.myconf/ --work-tree=$HOME'
</span><span style="color:#323232;">config config status.showUntrackedFiles no
</span>

where my ~/.myconf directory is a git bare repository. Then any file within the home folder can be versioned with normal commands like:

<pre style="background-color:#ffffff;">
<span style="color:#323232;">config status
</span><span style="color:#323232;">config add .vimrc
</span><span style="color:#323232;">config commit -m "Add vimrc"
</span><span style="color:#323232;">config add .config/redshift.conf
</span><span style="color:#323232;">config commit -m "Add redshift config"
</span><span style="color:#323232;">config push
</span><span style="color:#323232;">And so one…
</span>

No extra tooling, no symlinks, files are tracked on a version control system, you can use different branches for different computers, you can replicate you configuration easily on new installation.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • random
  • uselessserver093
  • Food
  • [email protected]
  • aaaaaaacccccccce
  • test
  • CafeMeta
  • testmag
  • MUD
  • RhythmGameZone
  • RSS
  • dabs
  • oklahoma
  • Socialism
  • KbinCafe
  • TheResearchGuardian
  • Ask_kbincafe
  • SuperSentai
  • feritale
  • KamenRider
  • All magazines