1059 `rebaseobsskipped`: set of revisions from source skipped because they have |
1059 `rebaseobsskipped`: set of revisions from source skipped because they have |
1060 successors in destination |
1060 successors in destination |
1061 """ |
1061 """ |
1062 # Obsolete node with successors not in dest leads to divergence |
1062 # Obsolete node with successors not in dest leads to divergence |
1063 divergenceok = ui.configbool('experimental', |
1063 divergenceok = ui.configbool('experimental', |
1064 'allowdivergence') |
1064 'evolution.allowdivergence') |
1065 divergencebasecandidates = rebaseobsrevs - rebaseobsskipped |
1065 divergencebasecandidates = rebaseobsrevs - rebaseobsskipped |
1066 |
1066 |
1067 if divergencebasecandidates and not divergenceok: |
1067 if divergencebasecandidates and not divergenceok: |
1068 divhashes = (str(repo[r]) |
1068 divhashes = (str(repo[r]) |
1069 for r in divergencebasecandidates) |
1069 for r in divergencebasecandidates) |
1070 msg = _("this rebase will cause " |
1070 msg = _("this rebase will cause " |
1071 "divergences from: %s") |
1071 "divergences from: %s") |
1072 h = _("to force the rebase please set " |
1072 h = _("to force the rebase please set " |
1073 "experimental.allowdivergence=True") |
1073 "experimental.evolution.allowdivergence=True") |
1074 raise error.Abort(msg % (",".join(divhashes),), hint=h) |
1074 raise error.Abort(msg % (",".join(divhashes),), hint=h) |
1075 |
1075 |
1076 def successorrevs(unfi, rev): |
1076 def successorrevs(unfi, rev): |
1077 """yield revision numbers for successors of rev""" |
1077 """yield revision numbers for successors of rev""" |
1078 assert unfi.filtername is None |
1078 assert unfi.filtername is None |