44 lines
950 B
Go
44 lines
950 B
Go
package main
|
|
|
|
import(
|
|
"log"
|
|
)
|
|
|
|
func cmdHead(config *configCollect) {
|
|
rc := NewRepoCommits(config)
|
|
|
|
rc.CollectDescs()
|
|
log.Println("Repo contains", len(rc.CommitDesc), "commits")
|
|
|
|
rc.CollectContent()
|
|
rc.BuildGraph()
|
|
log.Println("Repo has", len(rc.Root), "sources")
|
|
if len(rc.Root) > 1 {
|
|
for cn, _ := range rc.Root {
|
|
log.Println("Commit "+cn.Id+"\n"+cn.Content.String())
|
|
}
|
|
}
|
|
|
|
rc.FindLeafs()
|
|
log.Println("Repo has", len(rc.Leafs), "sinks")
|
|
|
|
rc.ChooseHead()
|
|
log.Println("Proposing following HEAD:\n"+rc.Head.Content.String())
|
|
}
|
|
|
|
func cmdLs(config *configCollect) {
|
|
rf := NewRepoFs(config)
|
|
rf.EntryNode.Walk(ExpandOnlyDirectory, -1)
|
|
|
|
stackFolders := []*DirNode{rf.EntryNode}
|
|
for len(stackFolders) > 0 {
|
|
fold := stackFolders[0]
|
|
stackFolders = append(stackFolders[1:], fold.Folders...)
|
|
|
|
log.Println(fold.String())
|
|
for _, file := range fold.Files {
|
|
log.Println(file.String())
|
|
}
|
|
}
|
|
}
|