git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Zdenek Wagner <zdenek.wagner@gmail.com>
To: rsbecker@nexbridge.com
Cc: git@vger.kernel.org
Subject: Re: git push does not work over https WebDAV
Date: Sat, 17 Aug 2024 10:33:05 +0200	[thread overview]
Message-ID: <CAC1phyY-cZ-jfM2-W=SVN61K5x2c3bG=Xz8jdrnqSHoLc1Av6Q@mail.gmail.com> (raw)
In-Reply-To: <CAC1phyYpt+B42vLbJpi0RMBJUn8D5oknBDp9PQ+6kD2db1Np0g@mail.gmail.com>

so 17. 8. 2024 v 10:14 odesílatel Zdenek Wagner
<zdenek.wagner@gmail.com> napsal:
>
> so 17. 8. 2024 v 4:25 odesílatel <rsbecker@nexbridge.com> napsal:
> >
> > On Friday, August 16, 2024 9:11 PM, Zdenek Wagner wrote:
> > >To: git@vger.kernel.org
> > >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/

  reply	other threads:[~2024-08-17  8:33 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-08-17  1:11 git push does not work over https WebDAV Zdenek Wagner
2024-08-17  2:25 ` rsbecker
2024-08-17  8:14   ` Zdenek Wagner
2024-08-17  8:33     ` Zdenek Wagner [this message]
2024-08-17 15:18       ` Zdenek Wagner
2024-11-22 23:31         ` Zdenek Wagner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAC1phyY-cZ-jfM2-W=SVN61K5x2c3bG=Xz8jdrnqSHoLc1Av6Q@mail.gmail.com' \
    --to=zdenek.wagner@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=rsbecker@nexbridge.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).