diff options
author | Paulo Gomes <pjbgf@linux.com> | 2023-05-25 18:48:52 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-05-25 18:48:52 +0100 |
commit | 44feb6c8221525c1cf10c51a82551a754b5d7031 (patch) | |
tree | ebe3410dbddfd6d9d750c647ff0aa036f43779b2 /plumbing/format/gitignore/dir.go | |
parent | 8bcb67c2cb09f9cf2fd0b0765c6cfcbc6355321a (diff) | |
parent | 209eda52fb004745ce36c95576bf24204999bb42 (diff) | |
download | go-git-44feb6c8221525c1cf10c51a82551a754b5d7031.tar.gz |
Merge pull request #772 from Jleagle/master
Replace user dir in path
Diffstat (limited to 'plumbing/format/gitignore/dir.go')
-rw-r--r-- | plumbing/format/gitignore/dir.go | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/plumbing/format/gitignore/dir.go b/plumbing/format/gitignore/dir.go index bb78655..bf6a1c1 100644 --- a/plumbing/format/gitignore/dir.go +++ b/plumbing/format/gitignore/dir.go @@ -25,6 +25,14 @@ const ( // readIgnoreFile reads a specific git ignore file. func readIgnoreFile(fs billy.Filesystem, path []string, ignoreFile string) (ps []Pattern, err error) { + + if strings.HasPrefix(ignoreFile, "~") { + home, err := os.UserHomeDir() + if err == nil { + ignoreFile = strings.Replace(ignoreFile, "~", home, 1) + } + } + f, err := fs.Open(fs.Join(append(path, ignoreFile)...)) if err == nil { defer f.Close() |