What happened to the editor-based resolve-conflicts workflow?


Used to be when I had to use Git tools to resolve conflicts, I would get a 3-panel IDE UI : like “Yours” in the left column, “Theirs” in the right column, and the merge in the middle. I would press <discard> and <keep> buttons in the outer columns to build the middle view, editing it when needed.

Now I just get a small dialog box (Title: “Merge Revisions for <path>…”) that just has buttons like “Accept Left”, “Accept Right”, “Cancel” and “Apply” . No better than merging from the command-line where you can't see the conflicts.

This is with GoLand 2023.2.5 



Can you please share exact steps before you get this window and can you share screenshot of the window? 


GoLand 2023.2.5
Build #GO-232.10227.11, built on November 13, 2023

Non-Bundled Plugins:
   org.jetbrains.plugins.rest (232.8660.88)
   org.intellij.plugins.postcss (232.8660.149)
   org.jetbrains.plugins.vue (232.10227.13)

Running `Git | Resolve Conflicts`:

I press `Merge` and get this:



I used to get a 3-pane view of the file, with the `Yours` in the left pane, `Theirs` in the right, and the merge in the middle. I can click on `X` and `<<` or `>>` buttons to determine what gets merged. 



File appears to be totally deleted, but somehow conflict is present.

What does git status return when you are in the conflict?
What happened with this file? Window says it was modified. Was it moved? Does it exist in both branches?
Does this occur for every file with a conflict?


1. `git status`:

interactive rebase in progress; onto 23bfa1cba
Last command done (1 command done):
  pick 69deede9a Bump XXX version to 103.0.5
Next command to do (1 remaining command):
  pick f47ec8f83 Bump YYY from 2.42 to 2.45 (LTS version).
 (use "git rebase --edit-todo" to view and edit)
You are currently rebasing branch '44606-bump-Y-to-2.45' on '23bfa1cba'.
 (fix conflicts and then run "git rebase --continue")
 (use "git rebase --skip" to skip this patch)
 (use "git rebase --abort" to check out the original branch)

Changes to be committed:
 (use "git restore --staged <file>..." to unstage)
<553 instances of ‘new file:’ (this is expected)>
Unmerged paths:
 (use "git restore --staged <file>..." to unstage)
 (use "git add <file>..." to mark resolution)
    both modified:   index.yaml
    both modified:   packages/YYY/YYY/package.yaml

2.  I get the reduced dialog as above for index.yaml

3. index.yaml exists in both branches. Here are some of the conflicts in the unmerged file:


At line 14424/21244:

<<<<<<< HEAD
   created: "2024-04-04T10:28:17.338352-04:00"
   created: "2024-03-12T14:07:38.163458-07:00"
>>>>>>> 69deede9a (Bump YYY version to 103.0.5)

And there are three others. I can easily merge these manually.

Do you think goland shows the reduced merge-conflict dialog because the file is 21,244 lines long?


I think we will need to inspect logs for this, 

Can you please reproduce and share the entire logs folder zipped as per https://intellij-support.jetbrains.com/hc/en-us/articles/207241085-Locating-IDE-log-files


Please sign in to leave a comment.