1
0
mirror of https://github.com/jesseduffield/lazygit.git synced 2025-07-03 00:57:52 +02:00

add feature of display diff between specific commits

This commit is contained in:
skanehira
2019-03-23 22:46:08 +09:00
committed by Jesse Duffield
parent 1a933eaa73
commit c350cdba43
11 changed files with 131 additions and 24 deletions

@ -13,6 +13,7 @@ type Commit struct {
DisplayString string
Action string // one of "", "pick", "edit", "squash", "reword", "drop", "fixup"
Copied bool // to know if this commit is ready to be cherry-picked somewhere
Selected bool
}
// GetDisplayStrings is a function.
@ -52,5 +53,12 @@ func (c *Commit) GetDisplayStrings(isFocused bool) []string {
actionString = cyan.Sprint(utils.WithPadding(c.Action, 7)) + " "
}
return []string{shaColor.Sprint(c.Sha), actionString + white.Sprint(c.Name)}
name := ""
if c.Selected {
name = color.New(color.FgMagenta).Sprint(c.Name)
} else {
name = white.Sprint(c.Name)
}
return []string{shaColor.Sprint(c.Sha), actionString + name}
}

@ -910,3 +910,9 @@ func (c *GitCommand) ResetHardHead() error {
func (c *GitCommand) ResetSoftHead() error {
return c.OSCommand.RunCommand("git reset --soft HEAD")
}
// DiffCommits show diff between commits
func (c *GitCommand) DiffCommits(sha1, sha2 string) (string, error) {
cmd := fmt.Sprintf("git diff --color %s %s", sha1, sha2)
return c.OSCommand.RunCommandWithOutput(cmd)
}