D24: rebase: remove revprecursor and revpruned states (BC)

quark (Jun Wu) phabricator at mercurial-scm.org
Sat Aug 26 21:57:06 EDT 2017


quark added a comment.


  I think:
  
  1. `pull --rebase` should do more than just `rebase -b . -d tip`
  2. It's more consistent for whoever making working parent obsolete to move working parent
  
  For 1, even without obsmarker but just B becomes public:
  
    Before pull:
    
      @ B draft  
      |
      o A public
    
    Remote:
    
      o C public
      |
      o B public
      |
      o A public
    
    After pull:
    
      ? C public
      |
      ? B public
      |
      o A public
  
  Apparently `pull --rebase` should move working parent to C. Do you think `rebase -b B -d C` needs to move working parent in this case? I don't think so.
  
  For 2, it could be tricky because pull is supposed to not touch working copy.
  
  I'm not opposite making rebase do extra things like the working parent movement. But I'd prefer doing it in a way that does not introduce legacy states. It could be done by having an optional `state[wdirrev]`.

REPOSITORY
  rHG Mercurial

REVISION DETAIL
  https://phab.mercurial-scm.org/D24

To: quark, durin42, #hg-reviewers
Cc: martinvonz, durin42, mercurial-devel


More information about the Mercurial-devel mailing list