summaryrefslogtreecommitdiffstats
path: root/modules/convert/git_commit.go
diff options
context:
space:
mode:
Diffstat (limited to 'modules/convert/git_commit.go')
-rw-r--r--modules/convert/git_commit.go15
1 files changed, 15 insertions, 0 deletions
diff --git a/modules/convert/git_commit.go b/modules/convert/git_commit.go
index 87dfb51e70..4e30ec2c0b 100644
--- a/modules/convert/git_commit.go
+++ b/modules/convert/git_commit.go
@@ -131,6 +131,20 @@ func ToCommit(repo *models.Repository, commit *git.Commit, userCache map[string]
}
}
+ // Retrieve files affected by the commit
+ fileStatus, err := git.GetCommitFileStatus(repo.RepoPath(), commit.ID.String())
+ if err != nil {
+ return nil, err
+ }
+ affectedFileList := make([]*api.CommitAffectedFiles, 0, len(fileStatus.Added)+len(fileStatus.Removed)+len(fileStatus.Modified))
+ for _, files := range [][]string{fileStatus.Added, fileStatus.Removed, fileStatus.Modified} {
+ for _, filename := range files {
+ affectedFileList = append(affectedFileList, &api.CommitAffectedFiles{
+ Filename: filename,
+ })
+ }
+ }
+
return &api.Commit{
CommitMeta: &api.CommitMeta{
URL: repo.APIURL() + "/git/commits/" + commit.ID.String(),
@@ -162,5 +176,6 @@ func ToCommit(repo *models.Repository, commit *git.Commit, userCache map[string]
Author: apiAuthor,
Committer: apiCommitter,
Parents: apiParents,
+ Files: affectedFileList,
}, nil
}