/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to breezy/git/commit.py

  • Committer: Breezy landing bot
  • Author(s): Jelmer Vernooij
  • Date: 2020-06-01 19:47:17 UTC
  • mfrom: (7506.1.1 merge-3.1)
  • Revision ID: breezy.the.bot@gmail.com-20200601194717-8mco90rhp2v1dbgj
Merge lp:brz/3.1.

Merged from https://code.launchpad.net/~jelmer/brz/merge-3.1/+merge/384927

Show diffs side-by-side

added added

removed removed

Lines of Context:
64
64
        self.store = self.repository._git.object_store
65
65
        self._blobs = {}
66
66
        self._inv_delta = []
67
 
        self._deleted_paths = set()
68
67
        self._any_changes = False
69
68
        self._mapping = self.repository.get_mapping()
70
69
 
88
87
            self._any_changes = True
89
88
            if change.path[1] is None:
90
89
                self._inv_delta.append((change.path[0], change.path[1], change.file_id, None))
91
 
                self._deleted_paths.add(change.path[0].encode("utf-8"))
 
90
                self._blobs[change.path[0].encode("utf-8")] = None
92
91
                continue
93
92
            try:
94
93
                entry_kls = entry_factory[change.kind[1]]
124
123
                raise AssertionError("Unknown kind %r" % change.kind[1])
125
124
            mode = object_mode(change.kind[1], change.executable[1])
126
125
            self._inv_delta.append((change.path[0], change.path[1], change.file_id, entry))
127
 
            if change.path[0] is not None:
128
 
                self._deleted_paths.add(change.path[0].encode("utf-8"))
129
 
            self._blobs[change.path[1].encode("utf-8")] = (mode, sha)
 
126
            encoded_new_path = change.path[1].encode("utf-8")
 
127
            self._blobs[encoded_new_path] = (mode, sha)
130
128
            if st is not None:
131
129
                yield change.path[1], (entry.text_sha1, st)
132
130
        if not seen_root and len(self.parents) == 0:
143
141
        for entry in basis_tree._iter_tree_contents(include_trees=False):
144
142
            if entry.path in self._blobs:
145
143
                continue
146
 
            if entry.path in self._deleted_paths:
147
 
                continue
148
144
            self._blobs[entry.path] = (entry.mode, entry.sha)
149
145
        self.new_inventory = None
150
146
 
154
150
 
155
151
    def finish_inventory(self):
156
152
        # eliminate blobs that were removed
157
 
        self._blobs = {k: v for (k, v) in self._blobs.items()}
 
153
        self._blobs = {k: v for (k, v) in self._blobs.items() if v is not None}
158
154
 
159
155
    def _iterblobs(self):
160
156
        return ((path, sha, mode) for (path, (mode, sha))