mirror of
https://github.com/jesseduffield/lazygit.git
synced 2025-06-06 23:46:13 +02:00
distinguish between inline and non-inline merge conflicts
This commit is contained in:
parent
7a2176f479
commit
0079015102
@ -11,6 +11,7 @@ type File struct {
|
|||||||
Tracked bool
|
Tracked bool
|
||||||
Deleted bool
|
Deleted bool
|
||||||
HasMergeConflicts bool
|
HasMergeConflicts bool
|
||||||
|
HasInlineMergeConflicts bool
|
||||||
DisplayString string
|
DisplayString string
|
||||||
Type string // one of 'file', 'directory', and 'other'
|
Type string // one of 'file', 'directory', and 'other'
|
||||||
}
|
}
|
||||||
|
@ -157,6 +157,7 @@ func (c *GitCommand) GetStatusFiles() []*File {
|
|||||||
Tracked: !untracked,
|
Tracked: !untracked,
|
||||||
Deleted: unstagedChange == "D" || stagedChange == "D",
|
Deleted: unstagedChange == "D" || stagedChange == "D",
|
||||||
HasMergeConflicts: change == "UU" || change == "AA" || change == "DU",
|
HasMergeConflicts: change == "UU" || change == "AA" || change == "DU",
|
||||||
|
HasInlineMergeConflicts: change == "UU" || change == "AA",
|
||||||
Type: c.OSCommand.FileType(filename),
|
Type: c.OSCommand.FileType(filename),
|
||||||
}
|
}
|
||||||
files = append(files, file)
|
files = append(files, file)
|
||||||
|
@ -67,7 +67,7 @@ func (gui *Gui) handleFileSelect(g *gocui.Gui, v *gocui.View, alreadySelected bo
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
if file.HasMergeConflicts {
|
if file.HasInlineMergeConflicts {
|
||||||
return gui.refreshMergePanel()
|
return gui.refreshMergePanel()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -172,10 +172,10 @@ func (gui *Gui) handleEnterFile(g *gocui.Gui, v *gocui.View) error {
|
|||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
if file.HasMergeConflicts {
|
if file.HasInlineMergeConflicts {
|
||||||
return gui.handleSwitchToMerge(g, v)
|
return gui.handleSwitchToMerge(g, v)
|
||||||
}
|
}
|
||||||
if !file.HasUnstagedChanges {
|
if !file.HasUnstagedChanges || file.HasMergeConflicts {
|
||||||
return gui.createErrorPanel(g, gui.Tr.SLocalize("FileStagingRequirements"))
|
return gui.createErrorPanel(g, gui.Tr.SLocalize("FileStagingRequirements"))
|
||||||
}
|
}
|
||||||
if err := gui.changeContext("main", "staging"); err != nil {
|
if err := gui.changeContext("main", "staging"); err != nil {
|
||||||
@ -196,7 +196,7 @@ func (gui *Gui) handleFilePress(g *gocui.Gui, v *gocui.View) error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
if file.HasMergeConflicts {
|
if file.HasInlineMergeConflicts {
|
||||||
return gui.handleSwitchToMerge(g, v)
|
return gui.handleSwitchToMerge(g, v)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -458,7 +458,7 @@ func (gui *Gui) handleSwitchToMerge(g *gocui.Gui, v *gocui.View) error {
|
|||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
if !file.HasMergeConflicts {
|
if !file.HasInlineMergeConflicts {
|
||||||
return gui.createErrorPanel(g, gui.Tr.SLocalize("FileNoMergeCons"))
|
return gui.createErrorPanel(g, gui.Tr.SLocalize("FileNoMergeCons"))
|
||||||
}
|
}
|
||||||
if err := gui.changeContext("main", "merging"); err != nil {
|
if err := gui.changeContext("main", "merging"); err != nil {
|
||||||
|
@ -179,7 +179,7 @@ func addEnglish(i18nObject *i18n.Bundle) error {
|
|||||||
Other: "Fetching...",
|
Other: "Fetching...",
|
||||||
}, &i18n.Message{
|
}, &i18n.Message{
|
||||||
ID: "FileNoMergeCons",
|
ID: "FileNoMergeCons",
|
||||||
Other: "This file has no merge conflicts",
|
Other: "This file has no inline merge conflicts",
|
||||||
}, &i18n.Message{
|
}, &i18n.Message{
|
||||||
ID: "SureResetHardHead",
|
ID: "SureResetHardHead",
|
||||||
Other: "Are you sure you want to `reset --hard HEAD` and `clean -fd`? You may lose changes",
|
Other: "Are you sure you want to `reset --hard HEAD` and `clean -fd`? You may lose changes",
|
||||||
|
Loading…
x
Reference in New Issue
Block a user