git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 02/20] remote-bzr: delay blob fetching until the very end

From
Felipe Contreras <felipe.contreras@gmail.com>
Date
Apr 26, 2013, 01:07 UTC
Message-ID
<1366938488-25425-3-git-send-email-felipe.contreras@gmail.com>
In-Reply-To
<1366938488-25425-1-git-send-email-felipe.contreras@gmail.com>

Might be more efficient, but the real reason to use the marks will be revealed in upcoming patches.

Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
---
 contrib/remote-helpers/git-remote-bzr | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/contrib/remote-helpers/git-remote-bzr b/contrib/remote-helpers/git-remote-bzr
index 7452a57..91b5cda 100755
--- a/contrib/remote-helpers/git-remote-bzr
+++ b/contrib/remote-helpers/git-remote-bzr
@@ -506,10 +506,12 @@ class CustomTree():
         return changes
 
     def get_file_with_stat(self, file_id, path=None):
-        return (StringIO.StringIO(self.updates[file_id]['data']), None)
+        mark = self.updates[file_id]['mark']
+        return (StringIO.StringIO(blob_marks[mark]), None)
 
     def get_symlink_target(self, file_id):
-        return self.updates[file_id]['data']
+        mark = self.updates[file_id]['mark']
+        return blob_marks[mark]
 
 def c_style_unescape(string):
     if string[0] == string[-1] == '"':
@@ -553,7 +555,7 @@ def parse_commit(parser):
         if parser.check('M'):
             t, m, mark_ref, path = line.split(' ', 3)
             mark = int(mark_ref[1:])
-            f = { 'mode' : m, 'data' : blob_marks[mark] }
+            f = { 'mode' : m, 'mark' : mark }
         elif parser.check('D'):
             t, path = line.split(' ')
             f = { 'deleted' : True }
-- 
1.8.2.1.884.g3532a8d
Previous: Felipe ContrerasNext: Felipe Contreras
Message 3 of 29 in “remote-bzr: massive changes”
  1. 00/20 remote-bzr: massive changesFelipe Contreras, Apr 26, 2013
  2. 01/20 remote-bzr: cleanup CustomTreeFelipe Contreras, Apr 26, 2013
  3. 02/20 remote-bzr: delay blob fetching until the very endFelipe Contreras, Apr 26, 2013
  4. 03/20 remote-bzr: fix order of locking in CustomTreeFelipe Contreras, Apr 26, 2013
  5. 04/20 remote-bzr: always try to update the worktreeFelipe Contreras, Apr 26, 2013
  6. 05/20 remote-bzr: add support to push mergesFelipe Contreras, Apr 26, 2013
  7. 06/20 remote-bzr: fixes for branch divergeFelipe Contreras, Apr 26, 2013
  8. 07/20 remote-bzr: fix partially pushed mergeFelipe Contreras, Apr 26, 2013
  9. 08/20 remote-bzr: use branch variable when appropriateFelipe Contreras, Apr 26, 2013
  10. 09/20 remote-bzr: add support for bzr reposFelipe Contreras, Apr 26, 2013
  11. 10/20 remote-bzr: fix branch namesFelipe Contreras, Apr 26, 2013
  12. 11/20 remote-bzr: add support for shared repoFelipe Contreras, Apr 26, 2013
  13. 12/20 remote-bzr: split marks fileFelipe Contreras, Apr 26, 2013
  14. Felipe ContrerasApr 26, 2013
  15. Junio C HamanoApr 27, 2013
  16. Felipe ContrerasApr 27, 2013
  17. Junio C HamanoApr 28, 2013
  18. Felipe ContrerasApr 29, 2013
  19. 13/20 remote-bzr: improve author sanitazionFelipe Contreras, Apr 26, 2013
  20. 14/20 remote-bzr: add custom method to find branchesFelipe Contreras, Apr 26, 2013
  21. 15/20 remote-bzr: add option to specify branchesFelipe Contreras, Apr 26, 2013
  22. 16/20 remote-bzr: improve progress reportingFelipe Contreras, Apr 26, 2013
  23. 17/20 remote-bzr: iterate revisions properlyFelipe Contreras, Apr 26, 2013
  24. 18/20 remote-bzr: delay peer branch usageFelipe Contreras, Apr 26, 2013
  25. 19/20 remote-bzr: access branches only when neededFelipe Contreras, Apr 26, 2013
  26. 20/20 remote-bzr: export HEADFelipe Contreras, Apr 26, 2013
  27. Felipe ContrerasApr 26, 2013
  28. Junio C HamanoApr 26, 2013
  29. Felipe ContrerasApr 26, 2013

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.