Brian McGee
80e99b6d75
Figured out how to use `go-git` properly. ```console # git ❯ nix run .# -- --config-file ./test/echo.toml --tree-root /home/brian/Development/com/github/nixos/nixpkgs -c 38539 files changed in 272.843495ms # filesystem ❯ nix run .# -- --config-file ./test/echo.toml --tree-root /home/brian/Development/com/github/nixos/nixpkgs -c --walk filesystem 38567 files changed in 348.84277ms ``` Signed-off-by: Brian McGee <brian@bmcgee.ie> Reviewed-on: #23 Reviewed-by: Jonas Chevalier <zimbatm@noreply.git.numtide.com> Co-authored-by: Brian McGee <brian@bmcgee.ie> Co-committed-by: Brian McGee <brian@bmcgee.ie>
23 lines
366 B
Go
23 lines
366 B
Go
package walk
|
|
|
|
import (
|
|
"context"
|
|
"path/filepath"
|
|
)
|
|
|
|
type filesystemWalker struct {
|
|
root string
|
|
}
|
|
|
|
func (f filesystemWalker) Root() string {
|
|
return f.root
|
|
}
|
|
|
|
func (f filesystemWalker) Walk(_ context.Context, fn filepath.WalkFunc) error {
|
|
return filepath.Walk(f.root, fn)
|
|
}
|
|
|
|
func NewFilesystem(root string) (Walker, error) {
|
|
return filesystemWalker{root}, nil
|
|
}
|