title: How to communicate between internal Git repo behind firewall with external machine?
body: <p>Here's my situation: I have an upstream repo which is behind a corporate firewall. But the development machine is outside the firewall. How can I communicate between them? I am able to access InternalPC files from ExternalPC via Remote Desktop \\tsclient</p>
  
  <pre><code>UpstreamRepo &lt;--&gt; InternalPC &lt;--|firewall|--&gt; ExternalPC
  </code></pre>
  
  <p>Currently, what I do is use InternalPC to do all the git commands (fetch, merge, commit, push, etc). Then I manually copy the files back and forth between InternalPC and ExternalPC. But that doesn't allow me to do branches and commits on ExternalPC because they would be overwritten when I copy files from InternalPC to ExternalPC.</p>
  
  <p>Is there a better way to do this? One idea I had was if I could do a <code>git fetch &lt;InternalPC&gt;</code> and <code>git push &lt;InternalPC&gt;</code> from ExternalPC. Is it possible?</p>