Browse Source

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

tags/v1.11.0-dev
guillep2k Lunny Xiao 6 years ago
parent
commit
6a6b75190d
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