qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] https:// for GIT submodules / "smart" HTTP protocol on git.qemu.git
@ 2018-03-19 16:49 Daniel P. Berrangé
  2018-03-19 18:28 ` Daniel P. Berrangé
  0 siblings, 1 reply; 3+ messages in thread
From: Daniel P. Berrangé @ 2018-03-19 16:49 UTC (permalink / raw)
  To: qemu-devel; +Cc: Jeff Cody

Most of QEMU regular developers are fortunate to have unfiltered internet
access which allows using the git:// protocol. People working in more
old fashioned / paranoid environments often find access to anything other
than http(s) blocked by firewalls. They'll get a bad experiance when trying
to build QEMU, when we try to initialize the git submodules and git://
protocol fails to connect.

We could improve life for people behind such nasty firewalls if we made our
GIT submodules use https:// URIs, instead of git:// URIs. There is one snag.

Historically git:// URIs were strongly preferred over http(s):// URIs for
reasons for performance. Modern GIT though, supports both the traditional
"dumb" HTTP protocol (which is horribly slow) and a modern "smart" HTTP
protocol whose performance matches that of git:/// URIs.

Unfortunately it seems that git.qemu.org is not configured to enable the
smart HTTP protocol.

So can we get a todo item for git.qemu.org get the web server setup to
enable the smart GIT protocol, so we can then enable use of http:// by
default for all the submodules to improve life for contributors.

FYI, you can validate if a server supports the smart protocol or not
by querying  $REPO_URI/info/refs?service=git-upload-pack and seeing
if the response includes a header

   Content-Type: application/x-git-upload-pack-advertisement

qemu.org does not:

  $ wget -S  'https://git.qemu.org/git/qemu.git/info/refs?service=git-upload-pack' 2>&1 | grep Content-Type

and shows terrible git clone performance for http:// uris

but github for example does

  $ wget -S  'https://github.com/qemu/qemu.git/info/refs?service=git-upload-pack' 2>&1 | grep Content-Type
  Content-Type: application/x-git-upload-pack-advertisement

and shows great performance for http:// URIs

Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2018-03-19 19:10 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-03-19 16:49 [Qemu-devel] https:// for GIT submodules / "smart" HTTP protocol on git.qemu.git Daniel P. Berrangé
2018-03-19 18:28 ` Daniel P. Berrangé
2018-03-19 19:10   ` Jeff Cody

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).