equal
deleted
inserted
replaced
1658 extra.update(old.extra()) |
1658 extra.update(old.extra()) |
1659 |
1659 |
1660 # Also update it from the intermediate commit or from the wctx |
1660 # Also update it from the intermediate commit or from the wctx |
1661 extra.update(ctx.extra()) |
1661 extra.update(ctx.extra()) |
1662 |
1662 |
1663 files = set(old.files()) |
1663 if len(old.parents()) > 1: |
|
1664 # ctx.files() isn't reliable for merges, so fall back to the |
|
1665 # slower repo.status() method |
|
1666 files = set([fn for st in repo.status(base, old)[:3] |
|
1667 for fn in st]) |
|
1668 else: |
|
1669 files = set(old.files()) |
1664 |
1670 |
1665 # Second, we use either the commit we just did, or if there were no |
1671 # Second, we use either the commit we just did, or if there were no |
1666 # changes the parent of the working directory as the version of the |
1672 # changes the parent of the working directory as the version of the |
1667 # files in the final amend commit |
1673 # files in the final amend commit |
1668 if node: |
1674 if node: |
1723 |
1729 |
1724 pureextra = extra.copy() |
1730 pureextra = extra.copy() |
1725 extra['amend_source'] = old.hex() |
1731 extra['amend_source'] = old.hex() |
1726 |
1732 |
1727 new = context.memctx(repo, |
1733 new = context.memctx(repo, |
1728 parents=[base.node(), nullid], |
1734 parents=[base.node(), old.p2().node()], |
1729 text=message, |
1735 text=message, |
1730 files=files, |
1736 files=files, |
1731 filectxfn=filectxfn, |
1737 filectxfn=filectxfn, |
1732 user=user, |
1738 user=user, |
1733 date=date, |
1739 date=date, |