Gentoo Archives: gentoo-commits

From: "Michal Gorny (mgorny)" <mgorny@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog git-r3.eclass
Date: Tue, 25 Feb 2014 13:01:52
Message-Id: 20140225130149.637CA2004C@flycatcher.gentoo.org
1 mgorny 14/02/25 13:01:49
2
3 Modified: ChangeLog git-r3.eclass
4 Log:
5 Use git init+fetch rather than clone in order to fix checking out to non-empty directory. Fixes bug #502400.
6
7 Revision Changes Path
8 1.1148 eclass/ChangeLog
9
10 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1148&view=markup
11 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1148&content-type=text/plain
12 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1147&r2=1.1148
13
14 Index: ChangeLog
15 ===================================================================
16 RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
17 retrieving revision 1.1147
18 retrieving revision 1.1148
19 diff -u -r1.1147 -r1.1148
20 --- ChangeLog 24 Feb 2014 08:43:34 -0000 1.1147
21 +++ ChangeLog 25 Feb 2014 13:01:49 -0000 1.1148
22 @@ -1,6 +1,10 @@
23 # ChangeLog for eclass directory
24 # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
25 -# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1147 2014/02/24 08:43:34 mgorny Exp $
26 +# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1148 2014/02/25 13:01:49 mgorny Exp $
27 +
28 + 25 Feb 2014; Michał Górny <mgorny@g.o> git-r3.eclass:
29 + Use git init+fetch rather than clone in order to fix checking out to
30 + non-empty directory. Fixes bug #502400.
31
32 24 Feb 2014; Michał Górny <mgorny@g.o> git-r3.eclass:
33 Fetch and preserve git notes as well.
34
35
36
37 1.26 eclass/git-r3.eclass
38
39 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/git-r3.eclass?rev=1.26&view=markup
40 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/git-r3.eclass?rev=1.26&content-type=text/plain
41 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/git-r3.eclass?r1=1.25&r2=1.26
42
43 Index: git-r3.eclass
44 ===================================================================
45 RCS file: /var/cvsroot/gentoo-x86/eclass/git-r3.eclass,v
46 retrieving revision 1.25
47 retrieving revision 1.26
48 diff -u -r1.25 -r1.26
49 --- git-r3.eclass 24 Feb 2014 08:43:34 -0000 1.25
50 +++ git-r3.eclass 25 Feb 2014 13:01:49 -0000 1.26
51 @@ -1,6 +1,6 @@
52 # Copyright 1999-2014 Gentoo Foundation
53 # Distributed under the terms of the GNU General Public License v2
54 -# $Header: /var/cvsroot/gentoo-x86/eclass/git-r3.eclass,v 1.25 2014/02/24 08:43:34 mgorny Exp $
55 +# $Header: /var/cvsroot/gentoo-x86/eclass/git-r3.eclass,v 1.26 2014/02/25 13:01:49 mgorny Exp $
56
57 # @ECLASS: git-r3.eclass
58 # @MAINTAINER:
59 @@ -444,17 +444,24 @@
60 git rev-parse --verify refs/git-r3/"${local_id}"/__main__
61 )
62
63 - set -- git clone --quiet --shared --no-checkout "${GIT_DIR}" "${out_dir}"/
64 - echo "${@}" >&2
65 - "${@}" || die "git clone (for checkout) failed"
66 -
67 git-r3_sub_checkout() {
68 local orig_repo=${GIT_DIR}
69 local -x GIT_DIR=${out_dir}/.git
70 local -x GIT_WORK_TREE=${out_dir}
71
72 - # pull notes
73 - git fetch "${orig_repo}" "refs/notes/*:refs/notes/*" || die
74 + mkdir -p "${out_dir}" || die
75 +
76 + # use git init+fetch instead of clone since the latter doesn't like
77 + # non-empty directories.
78 +
79 + git init --quiet || die
80 + set -- git fetch --update-head-ok "${orig_repo}" \
81 + "refs/heads/*:refs/heads/*" \
82 + "refs/tags/*:refs/tags/*" \
83 + "refs/notes/*:refs/notes/*"
84 +
85 + echo "${@}" >&2
86 + "${@}" || die "git fetch into checkout dir failed"
87
88 set -- git checkout --quiet
89 if [[ ${remote_ref} ]]; then