title: git pull - merge remote changes before pushing again
body: <p>I have recently changed my programming machine, which is leading to some startup issues in getting my new coding source to integrate seamlessly with my existing Github repo and my app on Heroku.</p>
  
  <p>I originally used <code>git clone</code> to clone the Github repo onto my new machine. Since then, something has happened.</p>
  
  <ul>
  <li>When I do <code>git add .</code>, <code>git commit -m "mychanges"</code>, and <code>git push</code>, the code gets sent straight to Heroku. It used to get sent to my own Github repo, but I understand that's a simple matter of redefining what is considered 'origin'.</li>
  <li>After redefining origin to my Github repo's address, and typing <code>git push origin master</code>, I get the following error:<br>
  error: failed to push some refs to 'git@github.com:...'<br>
  To prevent you from losinghistory, non-fast-forward updates were rejected. Merge the remote changes ('git pull') before pushing again.</li>
  </ul>
  
  <p>I am concerned that my last two days of coding will be lost if I do a <code>git pull</code> (I have backed everything up just in case).</p>
  
  <p>My current idea: do the <code>git pull</code> and manually update the last two days' files from my backup, then finally do my <code>git push</code>. Is this the right way to go, or is there a more elegant solution?</p>