Browse Source

Include "executable" files in the index, as they are not necessarily binary (#7718)

for-closed-social
guillep2k 4 years ago
committed by Lunny Xiao
parent
commit
3566d2c860
2 changed files with 6 additions and 1 deletions
  1. +1
    -1
      models/repo_indexer.go
  2. +5
    -0
      modules/git/tree_entry.go

+ 1
- 1
models/repo_indexer.go View File

@ -232,7 +232,7 @@ func addDelete(filename string, repo *Repository, batch rupture.FlushingBatch) e
}
func isIndexable(entry *git.TreeEntry) bool {
return entry.IsRegular()
return entry.IsRegular() || entry.IsExecutable()
}
// parseGitLsTreeOutput parses the output of a `git ls-tree -r --full-name` command

+ 5
- 0
modules/git/tree_entry.go View File

@ -108,6 +108,11 @@ func (te *TreeEntry) IsRegular() bool {
return te.gogitTreeEntry.Mode == filemode.Regular
}
// IsExecutable if the entry is an executable file (not necessarily binary)
func (te *TreeEntry) IsExecutable() bool {
return te.gogitTreeEntry.Mode == filemode.Executable
}
// Blob returns the blob object the entry
func (te *TreeEntry) Blob() *Blob {
encodedObj, err := te.ptree.repo.gogitRepo.Storer.EncodedObject(plumbing.AnyObject, te.gogitTreeEntry.Hash)

Loading…
Cancel
Save