Documentation ¶
Overview ¶
https://github.com/git/git/blob/master/Documentation/gitrepository-layout.txt
Index ¶
- Variables
- type DotGit
- func (d *DotGit) Config() (fs.File, error)
- func (d *DotGit) ConfigWriter() (fs.File, error)
- func (d *DotGit) NewObject() (*ObjectWriter, error)
- func (d *DotGit) NewObjectPack() (*PackWriter, error)
- func (d *DotGit) Object(h core.Hash) (fs.File, error)
- func (d *DotGit) ObjectPack(hash core.Hash) (fs.File, error)
- func (d *DotGit) ObjectPackIdx(hash core.Hash) (fs.File, error)
- func (d *DotGit) ObjectPacks() ([]core.Hash, error)
- func (d *DotGit) Objects() ([]core.Hash, error)
- func (d *DotGit) Refs() ([]*core.Reference, error)
- func (d *DotGit) SetRef(r *core.Reference) error
- type ObjectWriter
- type PackWriter
Constants ¶
This section is empty.
Variables ¶
var ( // ErrNotFound is returned by New when the path is not found. ErrNotFound = errors.New("path not found") // ErrIdxNotFound is returned by Idxfile when the idx file is not found ErrIdxNotFound = errors.New("idx file not found") // ErrPackfileNotFound is returned by Packfile when the packfile is not found ErrPackfileNotFound = errors.New("packfile not found") // ErrConfigNotFound is returned by Config when the config is not found ErrConfigNotFound = errors.New("config file not found") // ErrPackedRefsDuplicatedRef is returned when a duplicated reference is // found in the packed-ref file. This is usually the case for corrupted git // repositories. ErrPackedRefsDuplicatedRef = errors.New("duplicated ref found in packed-ref file") // ErrPackedRefsBadFormat is returned when the packed-ref file corrupt. ErrPackedRefsBadFormat = errors.New("malformed packed-ref") // ErrSymRefTargetNotFound is returned when a symbolic reference is // targeting a non-existing object. This usually means the repository // is corrupt. ErrSymRefTargetNotFound = errors.New("symbolic reference target not found") )
Functions ¶
This section is empty.
Types ¶
type DotGit ¶
type DotGit struct {
// contains filtered or unexported fields
}
The DotGit type represents a local git repository on disk. This type is not zero-value-safe, use the New function to initialize it.
func New ¶
func New(fs fs.Filesystem) *DotGit
New returns a DotGit value ready to be used. The path argument must be the absolute path of a git repository directory (e.g. "/foo/bar/.git").
func (*DotGit) NewObject ¶
func (d *DotGit) NewObject() (*ObjectWriter, error)
NewObject return a writer for a new object file.
func (*DotGit) NewObjectPack ¶
func (d *DotGit) NewObjectPack() (*PackWriter, error)
NewObjectPack return a writer for a new packfile, it saves the packfile to disk and also generates and save the index for the given packfile.
func (*DotGit) ObjectPack ¶
ObjectPack returns a fs.File of the given packfile
func (*DotGit) ObjectPackIdx ¶
ObjectPackIdx returns a fs.File of the index file for a given packfile
func (*DotGit) ObjectPacks ¶
ObjectPacks returns the list of availables packfiles
func (*DotGit) Objects ¶
Objects returns a slice with the hashes of objects found under the .git/objects/ directory.
type ObjectWriter ¶
func (*ObjectWriter) Close ¶
func (w *ObjectWriter) Close() error