Parse commits

This commit is contained in:
Quentin 2021-04-21 16:49:12 +02:00
parent 3ed9f15672
commit dfcc8993ca
Signed by: quentin
GPG Key ID: A98E9B769E4FF428
1 changed files with 24 additions and 0 deletions

View File

@ -1,6 +1,7 @@
package main
import (
"encoding/json"
"log"
"io/ioutil"
"path/filepath"
@ -10,6 +11,13 @@ type RepoCommits struct {
Config configCollect
CommitDesc map[string]string
CommitContent map[string]Commit
Head *CommitNode
}
type CommitNode struct {
Parents []*CommitNode
Children []*CommitNode
Content Commit
}
type Commit struct {
@ -31,8 +39,12 @@ type Commit struct {
func cmdCommit(config configCollect) {
rc := NewRepoCommits(config)
rc.CollectDescs()
rc.PrintDescs()
rc.CollectContent()
//rc.BuildGraph()
}
func NewRepoCommits (config configCollect) *RepoCommits {
@ -72,3 +84,15 @@ func (rc* RepoCommits) PrintDescs() {
}
log.Println("Repo", rc.Config.RepoId, "contains", len(rc.CommitDesc), "commits")
}
func (rc* RepoCommits) CollectContent() {
for id, path := range rc.CommitDesc {
data, err := ioutil.ReadFile(path)
if err != nil { log.Fatal(err) }
var c Commit
json.Unmarshal(data, &c)
rc.CommitContent[id] = c
log.Println(rc.CommitContent[id])
}
}