parchlinux global dotfiles
Find a file
Dan Croak d8adb07377 Add git-churn script
After you commit a bug fix to a feature branch, find out if the code
you changed to fix the bug is in files that change often:

    git-churn

If the buggy code changes often, find smells and refactor them. Separate
the parts that change often from the parts that don't.

Conversely, avoid refactoring areas with low churn. Refactoring changes
code, and with each change, you risk introducing new bugs.

Example:

     [feature-branch][~/dev/rails-app] churn
     2 app/controllers/accepts_controller.rb
     2 config/database.yml
     4 app/helpers/application_helper.rb
     4 config/application.rb
     9 spec/models/user_spec.rb
     9 spec/spec_helper.rb
    12 spec/requests/dashboard_spec.rb
    13 spec/models/feedback_spec.rb
    19 app/models/feedback.rb
    21 app/models/user.rb
2012-11-15 22:46:10 -08:00
bin Add git-churn script 2012-11-15 22:46:10 -08:00
vim Add fugitive.vim 2012-10-23 23:26:21 -07:00
zsh/completion Tab-complete ack by looking at the tags file 2012-09-27 08:28:13 -04:00
.gitignore Add git-churn script 2012-11-15 22:46:10 -08:00
ackrc Add .ackrc 2012-09-15 13:59:19 -07:00
aliases Improve Rails-related aliases 2012-09-15 12:07:10 -07:00
gitconfig Add basic git aliases 2012-10-08 20:30:29 -07:00
gitignore Add .gitignore 2012-10-21 14:54:19 -07:00
gvimrc Vim configuration 2011-01-13 17:54:08 -05:00
install.sh Now posix compatible and I have removed the use of tail -r 2011-10-15 18:33:17 +11:00
LICENSE Update README and add MIT-LICENSE 2012-09-18 23:10:20 -07:00
README.md Document "DO NOT EDIT BELOW THIS LINE" convention 2012-10-21 15:10:47 -07:00
tmux.conf Simplify tmux status bar 2012-11-07 17:31:20 -08:00
vimrc Improve Markdown integration 2012-11-14 13:51:11 -05:00
zlogin zsh config 2011-01-13 17:26:04 -05:00
zshrc add in zshkit fun stuff 2011-04-04 10:27:03 -04:00

thoughtbot dotfiles

Requirements

Set zsh as your login shell.

chsh -s /bin/zsh

Install

First, fork this repo on Github.

Then, clone your Github fork onto your laptop and install it:

git clone git@github.com:your-github-name/dotfiles.git
cd dotfiles
./install.sh

This will create symlinks for config files in your home directory. If you include the line "DO NOT EDIT BELOW THIS LINE" anywhere in a config file, it will copy that file over instead of symlinking it, and it will leave everything above that line in your local config intact.

You can safely run ./install.sh multiple times to update.

Why fork?

You should be able to experiment with your own dotfiles, save them in version control, and still get updates from thoughtbot/dotfiles.

The master branch is for your customizations and the upstream branch is for thoughtbot's updates.

Set up the upstream branch

You only have to do this once:

git remote add upstream git@github.com:thoughtbot/dotfiles.git
git fetch upstream
git checkout -b upstream upstream/master

Make your own customizations

Put your customizations at the top of files, separated by "DO NOT EDIT BELOW THIS LINE."

For example, the top of your ~/.gitconfig might look like this:

[user]
  name = Joe Ferris
  email = jferris@thoughtbot.com

# DO NOT EDIT BELOW THIS LINE

[push]
  default = current

The top of your ~/.zlogin might look like this:

# RVM
[[ -s '/Users/croaky/.rvm/scripts/rvm' ]] && source '/Users/croaky/.rvm/scripts/rvm'

# DO NOT EDIT BELOW THIS LINE

# recommended by brew doctor
export PATH="/usr/local/bin:/usr/local/sbin:$PATH"

Get thoughtbot's updates

Each time you want to include thoughtbot's changes:

git checkout upstream
git pull
git checkout master
git rebase upstream

Credits

Thank you, contributors!

thoughtbot

Dotfiles is maintained by thoughtbot, inc The names and logos for thoughtbot are trademarks of thoughtbot, inc.

Dotfiles is © 2009-2012 thoughtbot, inc. It is free software and may be redistributed under the terms specified in the MIT-LICENSE file.