When merging, check for any path conflicts introduced by the manifest
merge and rename the conflicting file to a safe name.
Details
Diff Detail
- Repository
- rHG Mercurial
- Lint
Automatic diff as part of commit; lint not applicable. - Unit
Automatic diff as part of commit; unit tests not applicable.
Event Timeline
mercurial/merge.py | ||
---|---|---|
905–923 | This is potentially slow for large repos, as it has to iterate over the whole manifest. What I actually want to do is find the files in the directories named by remoteconflicts, which should be a small set, however I can't see a way to do that with the manifest API. Suggestions for improvement welcome. |
I'm sooooo excited by these improvements. one nit inline but this is such an improvement!
mercurial/merge.py | ||
---|---|---|
905–923 | Correct is more important. In a future with treemanifest, I could see some potential optimization opportunities. We may consider experimenting with them inside of treemanifest and upstream the results if this turns out to be a performance concern in very large repos in the wild. | |
952 | nit: we can be more precise here for clarity: repo.ui.warn(_("%s: is both a file and a directory at destination\n") % p) | |
tests/test-audit-path.t | ||
106–108 | so much better! |
mercurial/merge.py | ||
---|---|---|
927 | nit: worth a comment as to why we strip the + |
This is potentially slow for large repos, as it has to iterate over the whole manifest.
What I actually want to do is find the files in the directories named by remoteconflicts, which should be a small set, however I can't see a way to do that with the manifest API. Suggestions for improvement welcome.