From cdfebe3f55dc53872079a96a9a5dd6970bc2980e Mon Sep 17 00:00:00 2001 From: Shulhan Date: Sun, 11 Jan 2026 18:43:56 +0700 Subject: lib/git: fix ignore pattern with single wildcard '*' Single wildcard should ignore everything inside it. --- lib/git/git.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'lib/git/git.go') diff --git a/lib/git/git.go b/lib/git/git.go index 1fc5fde3..43a27bf5 100644 --- a/lib/git/git.go +++ b/lib/git/git.go @@ -244,15 +244,15 @@ func GetTag(repoDir, revision string) (tag string, err error) { // ".gitignore" file inside the path directory and its parent, until the root // of Git repository. func (git *Git) IsIgnored(path string) (b bool) { - path = strings.TrimSpace(path) + path = strings.TrimSpace(path) // a/b/b1 if path == `` { return true } // Traverse each directory from bottom to the top of git directory to // load ".gitignore" file and match it with path. - var absPath = filepath.Join(git.absDir, path) - var dirGitignore = filepath.Dir(absPath) - var name = strings.TrimPrefix(absPath, dirGitignore) + var absPath = filepath.Join(git.absDir, path) // $git/a/b/b1 + var dirGitignore = filepath.Dir(absPath) // $git/a/b/ + var name = strings.TrimPrefix(absPath, dirGitignore) // b1 name = strings.TrimLeft(name, `/`) for strings.HasPrefix(dirGitignore, git.absDir) { var ign *Gitignore -- cgit v1.3