diff options
author | kuba-- <kuba@sourced.tech> | 2018-08-29 14:56:25 +0200 |
---|---|---|
committer | kuba-- <kuba@sourced.tech> | 2018-08-29 14:56:25 +0200 |
commit | 75fa41d21c8d27ee0d5d7c7cb7ceeb2b765be330 (patch) | |
tree | 79b51316a608a848f60360fd76f1ca671c471579 /status.go | |
parent | 0167dabb78412ed5fb76cb4b174a6708c3be52b8 (diff) | |
download | go-git-75fa41d21c8d27ee0d5d7c7cb7ceeb2b765be330.tar.gz |
Add Status.IsUntracked function
Signed-off-by: kuba-- <kuba@sourced.tech>
Diffstat (limited to 'status.go')
-rw-r--r-- | status.go | 13 |
1 files changed, 11 insertions, 2 deletions
@@ -1,7 +1,10 @@ package git -import "fmt" -import "bytes" +import ( + "bytes" + "fmt" + "path/filepath" +) // Status represents the current status of a Worktree. // The key of the map is the path of the file. @@ -17,6 +20,12 @@ func (s Status) File(path string) *FileStatus { return s[path] } +// IsUntracked checks if file for given path is 'Untracked' +func (s Status) IsUntracked(path string) bool { + stat, ok := (s)[filepath.ToSlash(path)] + return ok && stat.Worktree == Untracked +} + // IsClean returns true if all the files aren't in Unmodified status. func (s Status) IsClean() bool { for _, status := range s { |