Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat(push): revert overzealous modified status
When pushing a patch, we would ideally like to show the "(modified)" status when the patch's diff changes. In StGit 2.4.11, the push behavior was changed such that "(modified)" would be displayed whenever the patch's underlying commit changed. But this meant that "(modified)" would be shown in many circumstances where the patch itself didn't change or didn't have a material change. Revert to the previous behavior where "(modified)" would only be shown if the initial patch application failed such that `git merge-recursive` had to be used to apply the patch. With this change, pushes will effectively never be shown as "(modified)". This remains a regression in StGit 2.x relative to 1.x. The root of this regression is that StGit 2.x, when pushing patches, uses `git apply --3way` whereas `git apply` withouth the `--3way` option was used in StGit 1.x. As a consequence, StGit 2.x patch application effectively never has to fallback to using `git merge-recursive` because `--3way` is correct/effective. But that also means that StGit's previous mechanism for determining whether a push modifies a patch no longer works.
- Loading branch information