mirror of
https://github.com/jesseduffield/lazygit.git
synced 2025-03-23 21:51:07 +02:00
Apply correct styling to root commit in graph
The root commit is special in that it has no parents. So we need to add a pipe that's headed for a commit that doesn't actually exist i.e. the mythical empty tree commit. We're using the actual hash of that pseudo-commit, but it's not being read anywhere.
This commit is contained in:
parent
c9136538b5
commit
5df27c61ed
pkg/gui/presentation/graph
@ -139,7 +139,7 @@ func getNextPipes(prevPipes []*Pipe, commit *models.Commit, getStyle func(c *mod
|
|||||||
// a traversed spot is one where a current pipe is starting on, ending on, or passing through
|
// a traversed spot is one where a current pipe is starting on, ending on, or passing through
|
||||||
traversedSpots := set.New[int]()
|
traversedSpots := set.New[int]()
|
||||||
|
|
||||||
if len(commit.Parents) > 0 {
|
if len(commit.Parents) > 0 { // merge commit
|
||||||
newPipes = append(newPipes, &Pipe{
|
newPipes = append(newPipes, &Pipe{
|
||||||
fromPos: pos,
|
fromPos: pos,
|
||||||
toPos: pos,
|
toPos: pos,
|
||||||
@ -148,6 +148,15 @@ func getNextPipes(prevPipes []*Pipe, commit *models.Commit, getStyle func(c *mod
|
|||||||
kind: STARTS,
|
kind: STARTS,
|
||||||
style: getStyle(commit),
|
style: getStyle(commit),
|
||||||
})
|
})
|
||||||
|
} else if len(commit.Parents) == 0 { // root commit
|
||||||
|
newPipes = append(newPipes, &Pipe{
|
||||||
|
fromPos: pos,
|
||||||
|
toPos: pos,
|
||||||
|
fromSha: commit.Sha,
|
||||||
|
toSha: models.EmptyTreeCommitHash,
|
||||||
|
kind: STARTS,
|
||||||
|
style: getStyle(commit),
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
traversedSpotsForContinuingPipes := set.New[int]()
|
traversedSpotsForContinuingPipes := set.New[int]()
|
||||||
|
@ -509,6 +509,18 @@ func TestGetNextPipes(t *testing.T) {
|
|||||||
{fromPos: 1, toPos: 1, fromSha: "d", toSha: "e", kind: STARTS, style: style.FgDefault},
|
{fromPos: 1, toPos: 1, fromSha: "d", toSha: "e", kind: STARTS, style: style.FgDefault},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
prevPipes: []*Pipe{
|
||||||
|
{fromPos: 0, toPos: 0, fromSha: "a", toSha: "root", kind: TERMINATES, style: style.FgDefault},
|
||||||
|
},
|
||||||
|
commit: &models.Commit{
|
||||||
|
Sha: "root",
|
||||||
|
Parents: []string{},
|
||||||
|
},
|
||||||
|
expected: []*Pipe{
|
||||||
|
{fromPos: 1, toPos: 1, fromSha: "root", toSha: models.EmptyTreeCommitHash, kind: STARTS, style: style.FgDefault},
|
||||||
|
},
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, test := range tests {
|
for _, test := range tests {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user