Skip to content

Preparations for fully native mode without Git conversion

We introduce a new boolean flag that expresses in various incarnations whether the repository content should be exported to a Git repository or not. It is exposed to Shell, Workhorse and direct subprocesses. Its interpretation by the Mercurial processes is py-heptapod!65 (merged).

In this MR targetting the main development branch, this flag always says to keep on exporting to Git. The intent is to keep the diff of the subsequent changes in the hgitaly2 branch (that allows to test Heptapod without Git) to a minimum.

Draft because:

  • Depends on #542 (closed): won't take such risks without the stable branch separation.
  • very soft dependency on py-heptapod!65 (merged) and subsequent merge in default branch of py-heptapod
  • very soft dependency on heptapod-shell!23 (merged)
  • A few changesets are actually fixing bugs or inconsistencies that should be published first (and would be fit for the stable series)
  • This is largely covered by the functional tests, but a few things would be easier to maintain with RSpec tests on top of that.

By "very soft dependency" on MRs in other components, we mean that it's useless without them, even with a local modification of the return value of hg_with_git? such as in !290 (merged).

With the new flag, we can reduce the relevance of a dedicated hgitaly2 branch to the Rails app: py-heptapod will be able of both in its main development branch once its MR is merged.

Edited by Georges Racinet

Merge request reports