mercurial/localrepo.py
branchstable
changeset 18520 751135cca13c
parent 18498 4d9f7dd2ac82
child 18644 3e92772d5383
child 18739 5b7175377bab
equal deleted inserted replaced
18519:ca430fb6a668 18520:751135cca13c
  1872                                      outgoing.commonheads,
  1872                                      outgoing.commonheads,
  1873                                      outgoing.missing)
  1873                                      outgoing.missing)
  1874                     cheads.extend(c.node() for c in revset)
  1874                     cheads.extend(c.node() for c in revset)
  1875                 # even when we don't push, exchanging phase data is useful
  1875                 # even when we don't push, exchanging phase data is useful
  1876                 remotephases = remote.listkeys('phases')
  1876                 remotephases = remote.listkeys('phases')
       
  1877                 if (self.ui.configbool('ui', '_usedassubrepo', False)
       
  1878                     and remotephases    # server supports phases
       
  1879                     and ret is None # nothing was pushed
       
  1880                     and remotephases.get('publishing', False)):
       
  1881                     # When:
       
  1882                     # - this is a subrepo push
       
  1883                     # - and remote support phase
       
  1884                     # - and no changeset was pushed
       
  1885                     # - and remote is publishing
       
  1886                     # We may be in issue 3871 case!
       
  1887                     # We drop the possible phase synchronisation done by
       
  1888                     # courtesy to publish changesets possibly locally draft
       
  1889                     # on the remote.
       
  1890                     remotephases = {'publishing': 'True'}
  1877                 if not remotephases: # old server or public only repo
  1891                 if not remotephases: # old server or public only repo
  1878                     phases.advanceboundary(self, phases.public, cheads)
  1892                     phases.advanceboundary(self, phases.public, cheads)
  1879                     # don't push any phase data as there is nothing to push
  1893                     # don't push any phase data as there is nothing to push
  1880                 else:
  1894                 else:
  1881                     ana = phases.analyzeremotephases(self, cheads, remotephases)
  1895                     ana = phases.analyzeremotephases(self, cheads, remotephases)