Re: git push does not work over https WebDAV

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



so 17. 8. 2024 v 10:14 odesílatel Zdenek Wagner
<zdenek.wagner@xxxxxxxxx> napsal:
>
> so 17. 8. 2024 v 4:25 odesílatel <rsbecker@xxxxxxxxxxxxx> napsal:
> >
> > On Friday, August 16, 2024 9:11 PM, Zdenek Wagner wrote:
> > >To: git@xxxxxxxxxxxxxxx
> > >What did you do before the bug happened? (Steps to reproduce your issue) git
> > >commit git push
> > >
> > >What did you expect to happen? (Expected behavior) The changes being pushed to
> > >the repo via https WebDAV
> > >
> > >What happened instead? (Actual behavior) $ git push
> > >error: Cannot access URL
> > >https://userfiles.math-gnostics.eu/git/mg-software.git/, return code
> > >22
> > >fatal: git-http-push failed
> > >error: failed to push some refs to
> > >'https://userfiles.math-gnostics.eu/git/mg-software.git'
> > >
> > >The credentials are in ~/.netrc, git clone and git pull works fine on all my repos on
> > >the same server, git push returns the same error
> > >
> > >Apache error log reports successfull access with the GET method (clone, pull) but
> > >"user not found" for the PROPFIND method
> > >
> > >What's different between what you expected and what actually happened?
> > >git push does not work at all
> > >
> > >Anything else you want to add:
> > >It is apparently an issue of git which is not OS specific, I have the same behaviour in
> > >Fedora 39 and Mac OSX, both having git 2.46.0. Everything works fine with git
> > >2.44.0 and earlier. I have
> > >temporarily solved my problem by downgrading git in Fedora 39. I have not trid
> > >2.45.0.
> > >
> > >Please review the rest of the bug report below.
> > >You can delete any lines you don't wish to share.
> > >
> > >
> > >[System Info]
> > >git version:
> > >git version 2.46.0
> > >cpu: x86_64
> > >no commit associated with this build
> > >sizeof-long: 8
> > >sizeof-size_t: 8
> > >shell-path: /bin/sh
> > >feature: fsmonitor--daemon
> > >libcurl: 8.9.1
> > >zlib: 1.3.1
> > >uname: Darwin 21.6.0 Darwin Kernel Version 21.6.0: Mon Jun 24 00:56:10 PDT
> > >2024; root:xnu-8020.240.18.709.2~1/RELEASE_X86_64 x86_64 compiler info:
> > >clang: 14.0.0 (clang-1400.0.29.202) libc info: no libc information available $SHELL
> > >(typically, interactive shell): /bin/bash
> > >
> > >Linux penguin.czw57 6.10.3-100.fc39.x86_64 #1 SMP PREEMPT_DYNAMIC Mon
> > >Aug  5 14:46:47 UTC 2024 x86_64 GNU/Linux
> > >
> > >
> > >[Enabled Hooks]
> >
> > Does your .curlrc specify --netrc or -n? Those appear to be required to specify the
> > Use of .netrc in curl.
> >
> > --Randall
> >
> I do not have .curlrc on my computers, it was never needed. First I
> thought that my working tree was damaged or that one repo was damaged
> thus I tried a fresh clone of another repo, cimmitted a change and
> tried to push. The result was the same. It found .netrc for git clone
> but not for git push, see the lines from access_log. After 401 the
> same object is requested with the user name and the password with
> status 200. This works for GET (clone and pull) but fails with
> PROPFIND. It tries the access without credentials. the server responds
> with status 401, git requests PROPFIND again but with an empty user
> name and server sends 401 again. At that moment git push reports error
> 22. Git 2.44.0 and earlier fills correctly the user name and password
> thus after PROPFIND I see PUT  and MOVE with the correct name. The
> lines from the failing git push after successful git clone (without
> .curlrc) are below:
>
> 78.80.16.189 - zw [16/Aug/2024:16:08:58 +0200] "GET /cgit/ HTTP/1.1" 200 20890
> 78.80.16.189 - - [16/Aug/2024:16:09:35 +0200] "GET
> /git/kraviny.git/info/refs?service=git-upload-pack HTTP/1.1" 401 381
> 78.80.16.189 - zw [16/Aug/2024:16:09:35 +0200] "GET
> /git/kraviny.git/info/refs?service=git-upload-pack HTTP/1.1" 200 -
> 78.80.16.189 - zw [16/Aug/2024:16:09:35 +0200] "GET
> /git/kraviny.git/HEAD HTTP/1.1" 200 23
> 78.80.16.189 - - [16/Aug/2024:16:10:42 +0200] "GET
> /git/kraviny.git/info/refs?service=git-receive-pack HTTP/1.1" 401 381
> 78.80.16.189 - zw [16/Aug/2024:16:10:42 +0200] "GET
> /git/kraviny.git/info/refs?service=git-receive-pack HTTP/1.1" 200 -
> 78.80.16.189 - zw [16/Aug/2024:16:10:42 +0200] "GET
> /git/kraviny.git/HEAD HTTP/1.1" 200 23
> 78.80.16.189 - - [16/Aug/2024:16:10:42 +0200] "PROPFIND
> /git/kraviny.git/ HTTP/1.1" 401 381
> 78.80.16.189 - "" [16/Aug/2024:16:10:42 +0200] "PROPFIND
> /git/kraviny.git/ HTTP/1.1" 401 381
>
> And this is successful git push after downgrade:
>
> ... (lines deleted, I have too many branches and tags)
> 37.48.21.228 - - [17/Aug/2024:00:51:34 +0200] "GET
> /git/mg-software.git/refs/tags/matrix-library-0.1.0 HTTP/1.1" 401 381
> 37.48.21.228 - zw [17/Aug/2024:00:51:34 +0200] "GET
> /git/mg-software.git/refs/tags/matrix-library-0.1.0 HTTP/1.1" 200 41
> 37.48.21.228 - - [17/Aug/2024:00:51:34 +0200] "PROPFIND
> /git/mg-software.git/refs/heads/ HTTP/1.1" 401 381
> 37.48.21.228 - zw [17/Aug/2024:00:51:34 +0200] "PROPFIND
> /git/mg-software.git/refs/heads/ HTTP/1.1" 207 3425
> 37.48.21.228 - - [17/Aug/2024:00:51:34 +0200] "GET
> /git/mg-software.git/refs/heads/master HTTP/1.1" 401 381
> 37.48.21.228 - zw [17/Aug/2024:00:51:34 +0200] "GET
> /git/mg-software.git/refs/heads/master HTTP/1.1" 200 41
> 37.48.21.228 - - [17/Aug/2024:00:51:34 +0200] "GET
> /git/mg-software.git/refs/heads/input-flat-ext-branch HTTP/1.1" 401
> 381
> 37.48.21.228 - zw [17/Aug/2024:00:51:34 +0200] "GET
> /git/mg-software.git/refs/heads/input-flat-ext-branch HTTP/1.1" 200 41
> 37.48.21.228 - - [17/Aug/2024:00:51:34 +0200] "GET
> /git/mg-software.git/refs/heads/smps-crossfilter HTTP/1.1" 401 381
> 37.48.21.228 - zw [17/Aug/2024:00:51:34 +0200] "GET
> /git/mg-software.git/refs/heads/smps-crossfilter HTTP/1.1" 200 41
> 37.48.21.228 - - [17/Aug/2024:00:51:34 +0200] "PUT
> /git/mg-software.git/info/refs HTTP/1.1" 401 381
> 37.48.21.228 - zw [17/Aug/2024:00:51:34 +0200] "PUT
> /git/mg-software.git/info/refs HTTP/1.1" 204 -
> 37.48.21.228 - - [17/Aug/2024:00:51:34 +0200] "UNLOCK
> /git/mg-software.git/info/refs HTTP/1.1" 401 381
> 37.48.21.228 - zw [17/Aug/2024:00:51:34 +0200] "UNLOCK
> /git/mg-software.git/info/refs HTTP/1.1" 204 -
>
> The majority of my repos are private, authorisation is needed even for
> clone and pull.
>
> Zdeněk Wagner
> https://www.zdenek-wagner.eu/

Just a note, I found a computer with git 2.45.2 in Fedora 39 and git
push works, it finds .netrc without .curlrc.

Zdeněk Wagner
https://www.zdenek-wagner.eu/





[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux