func (p *Project) AddDocumentToIndex(doc *pb.Document) error { oid, size, err := p.createDocument(doc) if err != nil { return fmt.Errorf("object couldn't be created: %v", err) } info := doc.GetInfo() if info == nil { return ErrNilObjectInfo } entry := &git.IndexEntry{ Mode: git.FilemodeBlob, Size: uint32(size), Id: oid, Path: info.Path, } index, err := p.repo.Index() if err != nil { return fmt.Errorf("could not retreive index: %v", err) } err = index.Add(entry) if err != nil { return err } return index.Write() }