title: Locking a branch, so that it cannot be staged/committed into? (Only merged/etc)
body: <p>I have a <code>master</code>/<code>develop</code> branching system that i have come to love, but it comes with a basic rule. No commits are done on <code>develop</code> or <code>master</code>, only merges. This is great, but recently i accidentally made some changes/commits on my develop branch and it annoys the tar out of me.</p>
  
  <p>I looked into moving the ownership of those commits from <code>develop</code> into another already existing branch (We'll call it <code>work</code>), the one i should have been working on in the first place, but i decided to just let this one go. Instead, i'd like to fix the issue to begin with.. How does one go about locking a branch, so that commit simply doesn't work on it for traditional, normal changes?</p>
  
  <p>Eg, if you made changes on a "locked" branch, you couldn't <code>git add</code> nor could you <code>git commit -a</code>. I suppose technically i'm asking to lock staging, but you get the idea. Any thoughts on this? Or would i simply be better off learning git well enough that i know how to fix commit parent issues?</p>