title: Git - how to work on two separate branches in two separate folders and push to common origin without problems
body: <p>I currently have two versions of my software in two separate branches. One version has major changes (renamed some folders, renamed some files, removed a lot of files).</p>
  
  <p>I wish to be able to work on both versions - e.g. do a bugfix in master, push it to origin, maybe merge it into the other branch.</p>
  
  <p>I just tried to do this, and got a bit confused. I did the bug fix in master, and pushed it. I pulled master into the other branch folder. This also seemed to merge. I pushed the result.</p>
  
  <p>Now, if I make another change in the master folder, and try to push all branches, I get complaints "Updates were rejected because a pushed branch tip is behind its remote counterpart" relating to the other branch.</p>
  
  <p>I then tried to pull the other branch into my master folder, but that did a horrible merge, and I ended up with the wrong branch. I think I have recovered from that, but I still can't push from my master folder.</p>
  
  <p>Obviously I am misunderstanding the correct way of working with TortoiseGit, can anyone advise me how I should be proceeding?</p>
  
  <p>Results of <code>git branch -vv</code></p>
  
  <pre><code>in master folder:
    CodeFirst             3b4d37b [origin/CodeFirst] Show 25 entries in DataTables if the screen is big enough.
    CodeFirstWebFramework be03722 Added DocumentMemo to report fields.
    SilverstreamMerge     778b791 default.js merge
  * master                6c1254c [origin/master] Prevent Download button appearing twice in reports.
  
  in branch (CodeFirstWebFramework) folder
  * CodeFirstWebFramework 08b9117 Merge branch 'master' of //router/var/svn/AccountServer into CodeFirstWebFramework
    master                b7994b3 [origin/master: behind 2] Validate Schedule.RepeatFrequency
  
  in origin (upstream repo on another machine)
    CodeFirst             3b4d37b Show 25 entries in DataTables if the screen is big enough.
    CodeFirstWebFramework 08b9117 Merge branch 'master' of //router/var/svn/AccountServer into CodeFirstWebFramework
    SilverstreamMerge     778b791 default.js merge
  * master                6c1254c Prevent Download button appearing twice in reports.
  </code></pre>
  
  <p>I think I am (incorrectly) expecting the <code>pull</code> command to copy all revisions of all branches from the upstream repo into the local repo. Is there a command to do this?</p>