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

[PATCH 06/20] remote-bzr: fixes for branch diverge

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

If the branches diverge we want to reset the pointer to where the remote actually is. Since we can access remote branches just as easily as local ones, let's do so.

Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
---
 contrib/remote-helpers/git-remote-bzr | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/contrib/remote-helpers/git-remote-bzr b/contrib/remote-helpers/git-remote-bzr
index 6a7f836..bf254a0 100755
--- a/contrib/remote-helpers/git-remote-bzr
+++ b/contrib/remote-helpers/git-remote-bzr
@@ -354,6 +354,7 @@ def do_import(parser):
     if os.path.exists(path):
         print "feature import-marks=%s" % path
     print "feature export-marks=%s" % path
+    print "feature force"
     sys.stdout.flush()
 
     while parser.check('import'):
@@ -716,7 +717,12 @@ def get_repo(url, alias):
             # pull
             d = bzrlib.bzrdir.BzrDir.open(clone_path)
             branch = d.open_branch()
-            result = branch.pull(remote_branch, [], None, False)
+            try:
+                result = branch.pull(remote_branch, [], None, False)
+            except bzrlib.errors.DivergedBranches:
+                # use remote branch for now
+                peer = None
+                return remote_branch
         else:
             # clone
             d = origin.sprout(clone_path, None,
-- 
1.8.2.1.884.g3532a8d
Previous: Felipe ContrerasNext: Felipe Contreras
Message 7 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.