Thread (7 messages) flat view 7 messages, 3 authors, 2020-02-20

Re: Bug: Git: Clone: University Network: No Output on Terminal

From: Manish Devgan <hidden>
Date: 2020-02-18 11:25:41

On Tue, Feb 18, 2020 at 1:08 AM René Scharfe [off-list ref] wrote:
Am 17.02.20 um 09:02 schrieb Manish Devgan:
quoted
Hello,

I am a university student from India and I was trying to clone the
xfwm4 git repository from the git-url :
https://git.xfce.org/xfce/xfwm4
I was trying to clone this repository over my university network and
it didn't work. I worked my way around by using my mobile
wireless-hotspot for the same and was able to do it just fine.
The next day I tried doing the exact same thing since I couldn't get
an answer from our university if any such firewall was blocking me
from cloning it. But this time instead of failing to reach the url the
command ran with the following output:

gabru-md@bhaalu:~/Desktop$ git clone https://git.xfce.org/xfce/xfwm4
Cloning into 'xfwm4'...

after waiting for a few minutes the command didn't fail but it didn't
show any output/stats like it does when I try to clone a repository
from Github which is definitely not blocked on the university network.
for eg.
That doesn't sound ideal, but it also doesn't necessarily have to be a
bug in the sense that git clone broke at some point.  It could be caused
by the server side as well.

What you see here is the default output of the so-called dumb HTTP
transport.  AFAUI it doesn't show any progress (yet?).  You can get some
kind of progress messages by dialing up the verbosity way up with
repeated -v or --verbose options.  E.g.:
Thanks I will make sure to use the -vvv option next time.
   $ git clone -vvv https://git.xfce.org/xfce/xfwm4
   Cloning into 'xfwm4'...
   got 9a2556cfeedcc1b73cea36e5045073ecdf9fd39a
   walk 9a2556cfeedcc1b73cea36e5045073ecdf9fd39a
   Getting alternates list for https://git.xfce.org/xfce/xfwm4
   Getting pack list for https://git.xfce.org/xfce/xfwm4
   got 72b002b0f028fe610ba22035453647001e886969
   Getting index for pack 3a53ad6629b13fd830436a47c59b86e29b565d88
   got 600cb96c7eed28529fc8d5d0383d58070cb30957
   Getting index for pack 9ef7bd53f4441a79be936132e1c4cde62f6fd9a8
   Getting index for pack cef42fa75f4badc8e7ece5fee5ff8068dc8ae51b
   [...]
I tried it this way and it worked just like you've mentioned.
quoted
gabru-md@bhaalu:~/Desktop$ git clone https://github.com/gabru-md/stl-cpp
Cloning into 'stl-cpp'...
remote: Enumerating objects: 186, done.
remote: Counting objects: 100% (186/186), done.
remote: Compressing objects: 100% (128/128), done.
remote: Total 186 (delta 92), reused 146 (delta 56), pack-reused 0
Receiving objects: 100% (186/186), 105.58 KiB | 256.00 KiB/s, done.
Resolving deltas: 100% (92/92), done.
This is the so-called smart HTTP transport at work, which does support
progress output.

You could use the git protocol to clone xfwm4:

   $ git clone git://git.xfce.org/xfce/xfwm4
   Cloning into 'xfwm4'...
   remote: Counting objects: 66501, done.
   remote: Compressing objects: 100% (16901/16901), done.
   [...]
The problem is that my university has blocked git protocol and hence I
cannot access it to clone the repository.
Moreover cloning and pushing over ssh are also blocked which is really
bad. The only way to get work done is to use HTTP. :(
quoted
Furthermore the interesting thing is that I expected that my attempt
at cloning the xfwm4 repository might have failed but it surprisingly
did not. The command did clone the xfwm4 repository for me but it
didn't print out any stats/output during that time.

After searching on DuckDuckGo I saw that adding flags `--verbose
--progress` will allow me to achieve the desired functionality. I
tried doing the same and the output is given below.

gabru-md@bhaalu:~/Desktop/test$ git clone --progress --verbose
https://git.xfce.org/xfce/xfwm4
Cloning into 'xfwm4'...
gabru-md@bhaalu:~/Desktop/test$ ls
xfwm4
gabru-md@bhaalu:~/Desktop/test$ cd xfwm4/
gabru-md@bhaalu:~/Desktop/test/xfwm4$ cd icons/
gabru-md@bhaalu:~/Desktop/test/xfwm4/icons$ ls
22x22  48x48  Makefile.am  scalable

It is evident that the cloning worked perfectly fine but there didn't
seem to be any output on the terminal. At first I was convinced that
it was network error because it couldn't reach the target url but now
it doesn't seem to be a network problem.

I am not quite sure if this unfamiliar behavior while cloning a
repository is a bug or not hence I thought of reporting it. Also,
Apologies if this is not a bug but something which is known already.

I am currently running git version 2.17.1 on my Xubuntu.
Git 2.25.1 shows the same behavior.

I guess the reason the dumb HTTP transport doesn't show any progress is
that there is no way to know how much data it needs to download, so it
can't calculate a percentage of work done.  Perhaps showing a number
that is incremented with each GET request or a spinning wheel or so
could reassure users that git clone is still working?

René
Yes. Having some sort of assurance that the clone command has not
failed would definitely be great.
The -vvv option puts out a great deal of stuff on my terminal which is
a sort of assurance that the command is working but it seems to print
huge loads of text which definitely does not make any sense to me at
least. I'd be more happy to see as you mentioned, a number or perhaps
a spinning wheel
which denotes that the command is working.

Thanks & Regards
Manish Devgan
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help