-
- Downloads
Introducing a pull-force-topic command
This is meant to import Pull Requests from external systems, such as Bitbucket. We don't provide a way to also change the branch in this first implementation (users can do it afterwards if they want to). But if it turns out we get lots of MRs wrongly targetted because of this, we'll do it. The implementation is a lower version of doing hg `incoming --bundle`, followed by `hg log` on the bundle to know the contained changesets, and then `hg unbundle` and `hg topic TOPIC` Being lower level than the CLI, we can do the whole in one single transaction, which will be important for Heptapod (single inner Git push) We decided to stay quite close to the CLI surface though, hence we still need to link the bundle file on the filesystem, and reopen it aftewards. We could have instead cherry-picked from the `exchange.pull`, but that would have been awkward. If we turn out to have problems with real life cases with phases or obsmarkers, we could cherry-pick from `exchange.pull` instead, but that will be more complicated.
Showing
- heptapod/testhelpers.py 5 additions, 0 deletionsheptapod/testhelpers.py
- hgext3rd/heptapod/__init__.py 124 additions, 1 deletionhgext3rd/heptapod/__init__.py
- hgext3rd/heptapod/tests/__init__.py 1 addition, 0 deletionshgext3rd/heptapod/tests/__init__.py
- hgext3rd/heptapod/tests/test_pull_force_topic.py 93 additions, 0 deletionshgext3rd/heptapod/tests/test_pull_force_topic.py
hgext3rd/heptapod/tests/__init__.py
0 → 100644
Please register or sign in to comment