Accepting request 1090985 from home:AndreasStieger:branches:devel:tools:scm
git 2.41.0 OBS-URL: https://build.opensuse.org/request/show/1090985 OBS-URL: https://build.opensuse.org/package/show/devel:tools:scm/git?expand=0&rev=618
This commit is contained in:
parent
787be26c66
commit
d3e863b7c9
Binary file not shown.
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:4893b8b98eefc9fdc4b0e7ca249e340004faa7804a433d17429e311e1fef21d2
|
|
||||||
size 7185260
|
|
BIN
git-2.41.0.tar.sign
Normal file
BIN
git-2.41.0.tar.sign
Normal file
Binary file not shown.
3
git-2.41.0.tar.xz
Normal file
3
git-2.41.0.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:e748bafd424cfe80b212cbc6f1bbccc3a47d4862fb1eb7988877750478568040
|
||||||
|
size 7273624
|
13
git.changes
13
git.changes
@ -1,3 +1,16 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Jun 3 15:59:19 UTC 2023 - Andreas Stieger <Andreas.Stieger@gmx.de>
|
||||||
|
|
||||||
|
- git 2.41.0: This update contains a number of compatible updates,
|
||||||
|
improvements and extensions to multiple workflows. Some changes
|
||||||
|
may break backwards compatibility:
|
||||||
|
* The libsecret credential helper obsoletes direct GNOME keyring
|
||||||
|
support, which was dropped (git-credential-gnome-keyring)
|
||||||
|
* "git format-patch" has been taught to ignore end-user
|
||||||
|
configuration ("diff.noprefix") and always use the standard
|
||||||
|
prefixes, to avoid breaking the receiving end of the patch
|
||||||
|
- drop sha256_clone_fix.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Tue Apr 25 20:43:30 UTC 2023 - Andreas Stieger <Andreas.Stieger@gmx.de>
|
Tue Apr 25 20:43:30 UTC 2023 - Andreas Stieger <Andreas.Stieger@gmx.de>
|
||||||
|
|
||||||
|
31
git.spec
31
git.spec
@ -27,7 +27,6 @@
|
|||||||
%if ! %{defined _fillupdir}
|
%if ! %{defined _fillupdir}
|
||||||
%define _fillupdir %{_localstatedir}/adm/fillup-templates
|
%define _fillupdir %{_localstatedir}/adm/fillup-templates
|
||||||
%endif
|
%endif
|
||||||
%bcond_without git_gnome_keyring
|
|
||||||
%bcond_without git_libsecret
|
%bcond_without git_libsecret
|
||||||
%bcond_without docs
|
%bcond_without docs
|
||||||
%if 0%{?suse_version} >= 1500 && %{with docs}
|
%if 0%{?suse_version} >= 1500 && %{with docs}
|
||||||
@ -36,7 +35,7 @@
|
|||||||
%bcond_with asciidoctor
|
%bcond_with asciidoctor
|
||||||
%endif
|
%endif
|
||||||
Name: git
|
Name: git
|
||||||
Version: 2.40.1
|
Version: 2.41.0
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: Fast, scalable, distributed revision control system
|
Summary: Fast, scalable, distributed revision control system
|
||||||
License: GPL-2.0-only
|
License: GPL-2.0-only
|
||||||
@ -61,7 +60,6 @@ Patch4: git-prevent_xss-default.diff
|
|||||||
Patch6: git-tcsh-completion-fixes.diff
|
Patch6: git-tcsh-completion-fixes.diff
|
||||||
Patch8: git-asciidoc.patch
|
Patch8: git-asciidoc.patch
|
||||||
Patch10: setup-don-t-fail-if-commondir-reference-is-deleted.patch
|
Patch10: setup-don-t-fail-if-commondir-reference-is-deleted.patch
|
||||||
Patch11: sha256_clone_fix.patch
|
|
||||||
BuildRequires: fdupes
|
BuildRequires: fdupes
|
||||||
BuildRequires: gpg2
|
BuildRequires: gpg2
|
||||||
BuildRequires: libcurl-devel
|
BuildRequires: libcurl-devel
|
||||||
@ -70,6 +68,7 @@ BuildRequires: libopenssl-devel
|
|||||||
BuildRequires: pcre2-devel
|
BuildRequires: pcre2-devel
|
||||||
BuildRequires: perl-Error
|
BuildRequires: perl-Error
|
||||||
BuildRequires: perl-MailTools
|
BuildRequires: perl-MailTools
|
||||||
|
BuildRequires: pkgconfig
|
||||||
BuildRequires: python3-base
|
BuildRequires: python3-base
|
||||||
BuildRequires: systemd-rpm-macros
|
BuildRequires: systemd-rpm-macros
|
||||||
BuildRequires: tcsh
|
BuildRequires: tcsh
|
||||||
@ -97,9 +96,6 @@ BuildRequires: docbook5-xsl-stylesheets
|
|||||||
BuildRequires: asciidoc
|
BuildRequires: asciidoc
|
||||||
%endif
|
%endif
|
||||||
%endif
|
%endif
|
||||||
%if %{with git_gnome_keyring}
|
|
||||||
BuildRequires: libgnome-keyring-devel
|
|
||||||
%endif
|
|
||||||
%if %{with git_libsecret}
|
%if %{with git_libsecret}
|
||||||
BuildRequires: libsecret-devel
|
BuildRequires: libsecret-devel
|
||||||
%endif
|
%endif
|
||||||
@ -190,24 +186,20 @@ Supplements: (%{name} and cvs)
|
|||||||
%description cvs
|
%description cvs
|
||||||
Tools for importing CVS repositories to the Git version control system.
|
Tools for importing CVS repositories to the Git version control system.
|
||||||
|
|
||||||
%package credential-gnome-keyring
|
%if %{with git_libsecret}
|
||||||
Summary: Git credential backend using the GNOME keyring as storage
|
|
||||||
Group: Development/Tools/Version Control
|
|
||||||
Requires: git-core = %{version}
|
|
||||||
Requires: gnome-keyring
|
|
||||||
|
|
||||||
%description credential-gnome-keyring
|
|
||||||
A Git credential backend which uses the GNOME keyring as storage.
|
|
||||||
|
|
||||||
%package credential-libsecret
|
%package credential-libsecret
|
||||||
Summary: Git credential backend using libsecret to access keyring
|
Summary: Git credential backend using libsecret to access keyring
|
||||||
Group: Development/Tools/Version Control
|
Group: Development/Tools/Version Control
|
||||||
Requires: git-core = %{version}
|
Requires: git-core = %{version}
|
||||||
|
Obsoletes: git-credential-gnome-keyring < %{version}
|
||||||
|
|
||||||
%description credential-libsecret
|
%description credential-libsecret
|
||||||
A Git credential backend which uses libsecret API to acces keyrings such as
|
A Git credential backend which uses libsecret API to acces keyrings such as
|
||||||
kwallet or GNOME keyring.
|
kwallet or GNOME keyring.
|
||||||
|
|
||||||
|
%endif
|
||||||
|
|
||||||
%package arch
|
%package arch
|
||||||
Summary: Git tools for importing Arch repositories
|
Summary: Git tools for importing Arch repositories
|
||||||
Group: Development/Tools/Version Control
|
Group: Development/Tools/Version Control
|
||||||
@ -355,9 +347,6 @@ chmod 755 .make
|
|||||||
./.make doc %{?_smp_mflags}
|
./.make doc %{?_smp_mflags}
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if %{with git_gnome_keyring}
|
|
||||||
./.make -C contrib/credential/gnome-keyring
|
|
||||||
%endif
|
|
||||||
%if %{with git_libsecret}
|
%if %{with git_libsecret}
|
||||||
./.make -C contrib/credential/libsecret
|
./.make -C contrib/credential/libsecret
|
||||||
%endif
|
%endif
|
||||||
@ -404,9 +393,6 @@ install -m 644 -D contrib/completion/git-prompt.sh %{buildroot}%{_datadir}/bash-
|
|||||||
mkdir -p %{buildroot}/%{_sysconfdir}/bash_completion.d/
|
mkdir -p %{buildroot}/%{_sysconfdir}/bash_completion.d/
|
||||||
install -m 644 %{SOURCE12} %{buildroot}/%{_sysconfdir}/bash_completion.d/git-prompt
|
install -m 644 %{SOURCE12} %{buildroot}/%{_sysconfdir}/bash_completion.d/git-prompt
|
||||||
# contrib/credential
|
# contrib/credential
|
||||||
%if %{with git_gnome_keyring}
|
|
||||||
install -m 755 -D contrib/credential/gnome-keyring/git-credential-gnome-keyring %{buildroot}/%{gitexecdir}/git-credential-gnome-keyring
|
|
||||||
%endif
|
|
||||||
%if %{with git_libsecret}
|
%if %{with git_libsecret}
|
||||||
install -m 755 -D contrib/credential/libsecret/git-credential-libsecret %{buildroot}/%{gitexecdir}/git-credential-libsecret
|
install -m 755 -D contrib/credential/libsecret/git-credential-libsecret %{buildroot}/%{gitexecdir}/git-credential-libsecret
|
||||||
%endif
|
%endif
|
||||||
@ -504,11 +490,6 @@ fi
|
|||||||
%{gitexecdir}/*cvs*
|
%{gitexecdir}/*cvs*
|
||||||
%{!?_without_docs: %{_mandir}/man1/*cvs*.1*}
|
%{!?_without_docs: %{_mandir}/man1/*cvs*.1*}
|
||||||
|
|
||||||
%if %{with git_gnome_keyring}
|
|
||||||
%files credential-gnome-keyring
|
|
||||||
%{gitexecdir}/git-credential-gnome-keyring
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%if %{with git_libsecret}
|
%if %{with git_libsecret}
|
||||||
%files credential-libsecret
|
%files credential-libsecret
|
||||||
%{gitexecdir}/git-credential-libsecret
|
%{gitexecdir}/git-credential-libsecret
|
||||||
|
@ -1,76 +0,0 @@
|
|||||||
commit 8b214c2e9dda8fc5b8d49b978fd2c155b7596cd0
|
|
||||||
Author: Junio C Hamano <gitster@pobox.com>
|
|
||||||
Date: Wed Apr 5 14:15:33 2023 -0700
|
|
||||||
|
|
||||||
clone: propagate object-format when cloning from void
|
|
||||||
|
|
||||||
A user could prepare an empty repository and set it to use SHA256 as
|
|
||||||
the object format. The new repository created by "git clone" from
|
|
||||||
such a repository however would not record that it is expecting
|
|
||||||
objects in the same SHA256 format. This works as expected if the
|
|
||||||
source repository is not empty.
|
|
||||||
|
|
||||||
Just like we started copying the name of the primary branch from the
|
|
||||||
remote repository even if it is unborn in 3d8314f8 (clone: propagate
|
|
||||||
empty remote HEAD even with other branches, 2022-07-07), lift the
|
|
||||||
code that records the object format out of the block executed only
|
|
||||||
when cloning from an instantiated repository, so that it works also
|
|
||||||
when cloning from an empty repository.
|
|
||||||
|
|
||||||
Signed-off-by: Junio C Hamano <gitster@pobox.com>
|
|
||||||
|
|
||||||
diff --git a/builtin/clone.c b/builtin/clone.c
|
|
||||||
index 462c286274..8f16d18a43 100644
|
|
||||||
--- a/builtin/clone.c
|
|
||||||
+++ b/builtin/clone.c
|
|
||||||
@@ -910,6 +910,7 @@ int cmd_clone(int argc, const char **argv, const char *prefix)
|
|
||||||
int err = 0, complete_refs_before_fetch = 1;
|
|
||||||
int submodule_progress;
|
|
||||||
int filter_submodules = 0;
|
|
||||||
+ int hash_algo;
|
|
||||||
|
|
||||||
struct transport_ls_refs_options transport_ls_refs_options =
|
|
||||||
TRANSPORT_LS_REFS_OPTIONS_INIT;
|
|
||||||
@@ -1298,15 +1299,15 @@ int cmd_clone(int argc, const char **argv, const char *prefix)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
- if (mapped_refs) {
|
|
||||||
- int hash_algo = hash_algo_by_ptr(transport_get_hash_algo(transport));
|
|
||||||
-
|
|
||||||
/*
|
|
||||||
* Now that we know what algorithm the remote side is using,
|
|
||||||
* let's set ours to the same thing.
|
|
||||||
*/
|
|
||||||
- initialize_repository_version(hash_algo, 1);
|
|
||||||
- repo_set_hash_algo(the_repository, hash_algo);
|
|
||||||
+ hash_algo = hash_algo_by_ptr(transport_get_hash_algo(transport));
|
|
||||||
+ initialize_repository_version(hash_algo, 1);
|
|
||||||
+ repo_set_hash_algo(the_repository, hash_algo);
|
|
||||||
+
|
|
||||||
+ if (mapped_refs) {
|
|
||||||
/*
|
|
||||||
* transport_get_remote_refs() may return refs with null sha-1
|
|
||||||
* in mapped_refs (see struct transport->get_refs_list
|
|
||||||
diff --git a/t/t5702-protocol-v2.sh b/t/t5702-protocol-v2.sh
|
|
||||||
index 71aabe30b7..6af5c2062f 100755
|
|
||||||
--- a/t/t5702-protocol-v2.sh
|
|
||||||
+++ b/t/t5702-protocol-v2.sh
|
|
||||||
@@ -269,6 +269,17 @@ test_expect_success 'clone propagates unborn HEAD from non-empty repo' '
|
|
||||||
grep "warning: remote HEAD refers to nonexistent ref" stderr
|
|
||||||
'
|
|
||||||
|
|
||||||
+test_expect_success 'clone propagates object-format from empty repo' '
|
|
||||||
+ test_when_finished "rm -fr src256 dst256" &&
|
|
||||||
+
|
|
||||||
+ echo sha256 >expect &&
|
|
||||||
+ git init --object-format=sha256 src256 &&
|
|
||||||
+ git clone src256 dst256 &&
|
|
||||||
+ git -C dst256 rev-parse --show-object-format >actual &&
|
|
||||||
+
|
|
||||||
+ test_cmp expect actual
|
|
||||||
+'
|
|
||||||
+
|
|
||||||
test_expect_success 'bare clone propagates unborn HEAD from non-empty repo' '
|
|
||||||
test_when_finished "rm -rf file_unborn_parent file_unborn_child.git" &&
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user