Merge lp:~jelmer/brz-git/remote-helper-fixes into lp:brz-git

Proposed by Jelmer Vernooij
Status: Merged
Approved by: Jelmer Vernooij
Approved revision: 1834
Merge reported by: The Breezy Bot
Merged at revision: not available
Proposed branch: lp:~jelmer/brz-git/remote-helper-fixes
Merge into: lp:brz-git
Diff against target: 105 lines (+17/-13)
3 files modified
fetch.py (+8/-6)
git-remote-bzr.1 (+3/-3)
git_remote_helper.py (+6/-4)
To merge this branch: bzr merge lp:~jelmer/brz-git/remote-helper-fixes
Reviewer Review Type Date Requested Status
Jelmer Vernooij Approve
Review via email: mp+341082@code.launchpad.net

Commit message

Various git remote helper fixes.

Description of the change

Various git remote helper fixes.

To post a comment you must log in.
Revision history for this message
Jelmer Vernooij (jelmer) wrote :

Rubberstamp! Proposer approves of own proposal.

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'fetch.py'
2--- fetch.py 2018-03-02 01:59:40 +0000
3+++ fetch.py 2018-03-08 02:55:28 +0000
4@@ -624,7 +624,7 @@
5 wants.add(git_sha)
6 return self.get_determine_wants_heads(wants, include_tags=include_tags)
7
8- def fetch_objects(self, determine_wants, mapping, limit=None):
9+ def fetch_objects(self, determine_wants, mapping, limit=None, lossy=False):
10 """Fetch objects from a remote server.
11
12 :param determine_wants: determine_wants callback
13@@ -699,7 +699,7 @@
14 map(all_parents.update, parent_map.itervalues())
15 return set(all_revs) - all_parents
16
17- def fetch_objects(self, determine_wants, mapping, limit=None):
18+ def fetch_objects(self, determine_wants, mapping, limit=None, lossy=False):
19 """See `InterGitNonGitRepository`."""
20 store = BazaarObjectStore(self.target, mapping)
21 store.lock_write()
22@@ -714,7 +714,7 @@
23 try:
24 objects_iter = self.source.fetch_objects(
25 wants_recorder, graph_walker, store.get_raw,
26- progress=lambda text: report_git_progress(pb, text))
27+ progress=lambda text: report_git_progress(pb, text),)
28 trace.mutter("Importing %d new revisions",
29 len(wants_recorder.wants))
30 (pack_hint, last_rev) = import_git_objects(self.target,
31@@ -744,7 +744,7 @@
32 """InterRepository that copies revisions from a local Git into a non-Git
33 repository."""
34
35- def fetch_objects(self, determine_wants, mapping, limit=None):
36+ def fetch_objects(self, determine_wants, mapping, limit=None, lossy=False):
37 """See `InterGitNonGitRepository`."""
38 remote_refs = self.source.controldir.get_refs_container()
39 wants = determine_wants(remote_refs)
40@@ -790,13 +790,15 @@
41 new_refs = update_refs(old_refs)
42 ref_changes.update(new_refs)
43 return [sha1 for (sha1, bzr_revid) in new_refs.itervalues()]
44- self.fetch_objects(determine_wants)
45+ self.fetch_objects(determine_wants, lossy=lossy)
46 for k, (git_sha, bzr_revid) in ref_changes.iteritems():
47 self.target._git.refs[k] = git_sha
48 new_refs = self.target.controldir.get_refs_container()
49 return None, old_refs, new_refs
50
51- def fetch_objects(self, determine_wants, mapping=None, limit=None):
52+ def fetch_objects(self, determine_wants, mapping=None, limit=None, lossy=False):
53+ if lossy:
54+ raise errors.LossyPushToSameVCS(self.source, self.target)
55 if limit is not None:
56 raise errors.FetchLimitUnsupported(self)
57 graphwalker = self.target._git.get_graph_walker()
58
59=== modified file 'git-remote-bzr.1'
60--- git-remote-bzr.1 2017-11-15 21:34:24 +0000
61+++ git-remote-bzr.1 2018-03-08 02:55:28 +0000
62@@ -24,10 +24,10 @@
63 breezy-git and git-remote-bzr are licensed under the GNU GPL, version 2 or later.
64 .SH "SEE ALSO"
65 .sp
66-\fBgit-remote-helpers\fR(1), \fBbzr\fR(1)
67+\fBgit-remote-helpers\fR(1), \fBbreezy\fR(1)
68 .SH "BAZAAR"
69 .sp
70-Part of the \fBbzr\fR(1) suite
71+Part of the \fBbreezy\fR(1) suite
72 .SH "AUTHOR"
73 .sp
74-breezy-git, git-remote-bzr and this manual page were written by Jelmer Vernooij.
75+breezy-git, git-remote-bzr and this manual page were written by Jelmer Vernooij.
76
77=== modified file 'git_remote_helper.py'
78--- git_remote_helper.py 2018-02-27 18:14:19 +0000
79+++ git_remote_helper.py 2018-03-08 02:55:28 +0000
80@@ -50,10 +50,12 @@
81 GitRepository,
82 )
83
84+from ..fastimport import exporter as fastexporter
85+
86 try:
87- from ..fastimport import exporter as fastexporter
88+ import fastimport
89 except ImportError:
90- fastexporter = None
91+ pass
92 else:
93 CAPABILITIES.append("import")
94
95@@ -137,8 +139,8 @@
96 self.batchcmd = "push"
97
98 def cmd_import(self, outf, argv):
99- if fastexporter is None:
100- raise Exception("install bzr-fastimport for 'import' command support")
101+ if "fastimport" in CAPABILITIES:
102+ raise Exception("install fastimport for 'import' command support")
103 dest_branch_name = ref_to_branch_name(argv[1])
104 if dest_branch_name == "master":
105 dest_branch_name = None

Subscribers

People subscribed via source and target branches

to all changes: