equal
deleted
inserted
replaced
2967 ) |
2967 ) |
2968 ) |
2968 ) |
2969 |
2969 |
2970 revs = list(revs) |
2970 revs = list(revs) |
2971 revs.extend(opts.get(b'rev')) |
2971 revs.extend(opts.get(b'rev')) |
2972 basectx = None |
|
2973 if opts.get(b'base'): |
|
2974 basectx = scmutil.revsingle(repo, opts[b'base'], None) |
|
2975 # a dict of data to be stored in state file |
2972 # a dict of data to be stored in state file |
2976 statedata = {} |
2973 statedata = {} |
2977 # list of new nodes created by ongoing graft |
2974 # list of new nodes created by ongoing graft |
2978 statedata[b'newnodes'] = [] |
2975 statedata[b'newnodes'] = [] |
2979 |
2976 |
3059 opts[b'user'] = statedata[b'user'] |
3056 opts[b'user'] = statedata[b'user'] |
3060 if statedata.get(b'log'): |
3057 if statedata.get(b'log'): |
3061 opts[b'log'] = True |
3058 opts[b'log'] = True |
3062 if statedata.get(b'no_commit'): |
3059 if statedata.get(b'no_commit'): |
3063 opts[b'no_commit'] = statedata.get(b'no_commit') |
3060 opts[b'no_commit'] = statedata.get(b'no_commit') |
|
3061 if statedata.get(b'base'): |
|
3062 opts[b'base'] = statedata.get(b'base') |
3064 nodes = statedata[b'nodes'] |
3063 nodes = statedata[b'nodes'] |
3065 revs = [repo[node].rev() for node in nodes] |
3064 revs = [repo[node].rev() for node in nodes] |
3066 else: |
3065 else: |
3067 cmdutil.wrongtooltocontinue(repo, _(b'graft')) |
3066 cmdutil.wrongtooltocontinue(repo, _(b'graft')) |
3068 else: |
3067 else: |
3071 cmdutil.checkunfinished(repo) |
3070 cmdutil.checkunfinished(repo) |
3072 cmdutil.bailifchanged(repo) |
3071 cmdutil.bailifchanged(repo) |
3073 revs = scmutil.revrange(repo, revs) |
3072 revs = scmutil.revrange(repo, revs) |
3074 |
3073 |
3075 skipped = set() |
3074 skipped = set() |
|
3075 basectx = None |
|
3076 if opts.get(b'base'): |
|
3077 basectx = scmutil.revsingle(repo, opts[b'base'], None) |
3076 if basectx is None: |
3078 if basectx is None: |
3077 # check for merges |
3079 # check for merges |
3078 for rev in repo.revs(b'%ld and merge()', revs): |
3080 for rev in repo.revs(b'%ld and merge()', revs): |
3079 ui.warn(_(b'skipping ungraftable merge revision %d\n') % rev) |
3081 ui.warn(_(b'skipping ungraftable merge revision %d\n') % rev) |
3080 skipped.add(rev) |
3082 skipped.add(rev) |
3163 if not revs: |
3165 if not revs: |
3164 return -1 |
3166 return -1 |
3165 |
3167 |
3166 if opts.get(b'no_commit'): |
3168 if opts.get(b'no_commit'): |
3167 statedata[b'no_commit'] = True |
3169 statedata[b'no_commit'] = True |
|
3170 if opts.get(b'base'): |
|
3171 statedata[b'base'] = True |
3168 for pos, ctx in enumerate(repo.set(b"%ld", revs)): |
3172 for pos, ctx in enumerate(repo.set(b"%ld", revs)): |
3169 desc = b'%d:%s "%s"' % ( |
3173 desc = b'%d:%s "%s"' % ( |
3170 ctx.rev(), |
3174 ctx.rev(), |
3171 ctx, |
3175 ctx, |
3172 ctx.description().split(b'\n', 1)[0], |
3176 ctx.description().split(b'\n', 1)[0], |