Deal with git am failures

Today I needed to take my model git branch which was based off of the develop branch a week ago, and rebase it off of the master. First I did the obvious, git rebase master in my model branch, that yielded tons of conflicts. The conflicts were a result of commits in the develop branch being squashed when they got merged to master to keep the history clean. Instead of fixing tons of conflicts, I simply chose to take my 3 commits and create patches from them:

git format-patch -3 HEAD

I created a new branch off of master and applied my patches using git am.

git checkout master
git checkout -b model_updates
git am ~/0001-add-rhev-params-remove-serialized-hash.patch 
git am ~/0002-start-v21-of-deployments.patch
git am ~/0003-rename-columns-and-include-missing-columns.patch

Patch 0001 and ultimately 0003 applied without problems. Patch 0002 on the other hand gave me fits, I expected it, but I refused to recode the change. git am ... just fails when it hits a conflict. Using the trusty Google, I found this blog: Deal with git am failures. I followed the instructions from that blog post:

git am --abort #abort the previously failed 0002 patch run
git apply ~/0002-start-v21-of-deployments.patch --reject # yield .rej files I could inspect
git add server/app/controllers/fusor/api/v2/deployments_controller.rb # ensure changes are fine
git add server/app/controllers/fusor/api/v21/ # new files from patch
git am --resolved # tells git we're good to go, proceed.

Done! Way easier than dealing with the conflicts from the rebase. Easier than trying to recode the patch as well.