title: GitHub, Git, how to submit changes to an upstream repository
body: <p>We've been using Git internally for quite some time now and have a pretty good work flow within our team. Yesterday we wanted to submit some bug fixes to a project on GitHub. That is something new to us. So this is what we did:</p>
  
  <ol>
  <li>Cloned their repository</li>
  <li>Forked the upstream</li>
  <li>Added our fork as a remote</li>
  <li>Fixed some bugs in the master branch</li>
  <li>Pushed master to our remote fork</li>
  <li>Sent a pull request</li>
  <li>They pulled the changes</li>
  <li><code>git fetch origin</code></li>
  <li>On master: <code>git merge origin/master</code></li>
  </ol>
  
  <p>Is this the correct way to do things? We ended up with an extra "Merge commit 'origin/master'" message that other developers don't seem to get. Also in the log we can see our commits twice.</p>
  
  <p>Everything seems to be OK, but it just feels wrong. Are there good GitHub workflow pages? The Git help pages seem to miss the how to do the local changes part.</p>
  
  <p>I figure if we'd rolled back our master branch after pushing the changes to the fork we wouldn't have this problem, but that does not feel right either.</p>