1
0
mirror of https://github.com/jesseduffield/lazygit.git synced 2025-10-17 20:31:19 +03:00
Files
lazygit/pkg/commands/git_commands/commit_loading_shared.go
Stefan Haller 88dae1d8b9 Refactor commit loading and reflog commit loading to extract shared code
These are very similar in that they call RunAndProcessLines on a git log command
and then process lines to create commits. Extract this into a common helper
function. At the moment this doesn't gain us much, but in the next commit we
will extend this helper function considerably with filter path logic, which
would otherwise have to be duplicated in both places.
2025-07-27 12:05:41 +02:00

24 lines
527 B
Go

package git_commands
import (
"github.com/jesseduffield/lazygit/pkg/commands/models"
"github.com/jesseduffield/lazygit/pkg/commands/oscommands"
)
func loadCommits(
cmd *oscommands.CmdObj,
parseLogLine func(string) (*models.Commit, bool),
) ([]*models.Commit, error) {
commits := []*models.Commit{}
err := cmd.RunAndProcessLines(func(line string) (bool, error) {
commit, stop := parseLogLine(line)
if stop {
return true, nil
}
commits = append(commits, commit)
return false, nil
})
return commits, err
}