From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bernt Hansen Subject: Re: problems cloning using the http protocol Date: Tue, 14 Jul 2009 13:17:51 -0400 Message-ID: <87y6qri3pc.fsf@gollum.intra.norang.ca> References: <87vdlvjzh7.fsf@aia00627.aia.gr> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1MQlds-0002A9-JY for emacs-orgmode@gnu.org; Tue, 14 Jul 2009 13:18:12 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1MQldp-00029h-IX for emacs-orgmode@gnu.org; Tue, 14 Jul 2009 13:18:12 -0400 Received: from [199.232.76.173] (port=57731 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MQldp-00029e-DJ for emacs-orgmode@gnu.org; Tue, 14 Jul 2009 13:18:09 -0400 Received: from mho-02-ewr.mailhop.org ([204.13.248.72]:55410) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1MQldo-0004Tr-2M for emacs-orgmode@gnu.org; Tue, 14 Jul 2009 13:18:08 -0400 In-Reply-To: (Scot Becker's message of "Tue\, 14 Jul 2009 13\:28\:25 +0100") List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Scot Becker Cc: Dias Badekas , emacs-orgmode@gnu.org Scot Becker writes: > Just tried: > git clone http://repo.or.cz/r/org-mode.git > > behind my corporate firewall, and it worked. It's slow, however. HTTP will always be slower than the git protocol. HTTP is dumb so there is no way to transfer only part of a pack that contains the objects you are missing. You'll get the entire pack file each time via the HTTP protocol. > So I don't think the problem is on the server end. Did you try any > other projects (using git+http proxy)? > > I don't suppose anyone knows how to git org develpment releases > sometimes behind an http proxy and sometimes directly (as on a laptop > that is sometimes behind a firewall, and sometimes not.) I couldn't > make this to work. There are multiple options ------------------------------------------------------------------------ UNTESTED You might be able to get away with creating a second remote for the project like this: [remote "origin"] fetch = +refs/heads/*:refs/remotes/origin/* url = http://repo.or.cz/r/org-mode.git [remote "origin2"] url = git://repo.or.cz/org-mode.git fetch = +refs/heads/*:refs/remotes/origin/* then git fetch origin uses the HTTP protocol and git fetch origin2 uses the git protocol You can set up origin to be whichever you use more often (or switch as required.) The only differences between these remotes are: - name of the remote - you can name it anything you like - the fetch = lines are identical - using the same remote ref 'refs/remotes/origin'. This should work okay since the repos are physically the same - the url specifies the transport method to use. ------------------------------------------------------------------------ Just use two remotes origin for your fast git protocol access http for your slow http protocol access then you'll have remotes like origin/master and http/master If you can't git pull origin, you can manually git fetch http and git merge http/master or whatever is appropriate ------------------------------------------------------------------------ I carry my org-mode.git around on my USB stick -- so I can just clone/pull/fetch from that without internet access. I'll update my workstation/laptop repo when it has net access and then push to the usb stick. HTH, Bernt