extrawurst/gitui

merging (with conflicts)

extrawurst opened this issue · 4 comments

this will be a multistep process:

  • non-ff merging will put the repo in conflicted state (<<<< in the files)
  • user resolved conflicts outside of gitui
  • now we provide means to put repo into resolved state
  • committing from this state should auto fill the commit msg with the typical merge commit text
  • at any step we need to provide means to abort/revert the ongoing merge

turns out git2-rs lacks support for: git_repository_mergehead_foreach (issue: rust-lang/git2-rs#705)

we need that to be able to figure out which branch is currently about to be merged

update:

  1. we now can merge in arbitrary branches from the branch list
  2. we can undo a ongoing merge state (revert/reset, cleanup repo)

what's left to do:

  • asking to do a merge commit right away if no conflicts
  • helping with the typical merge commit msg if manually committing the merge

Screenflick Movie 10

ok update time:

  1. we can commit a merge now
  2. we make use of standard MERGE_MSG file to repopulate merge commit msg

that leaves us with only a few small todos:

  • do ff merge if possible and desired
  • remove limitation that a pull has to be conflict free

Screenflick Movie 11

closed with 8767642