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 |