Минимальная Go-библиотека для работы с git-репозиторием
gl := gitlib.NewGitLib("/путь/repo.git")
branches, err := gl.GetBranches()Создаётся через gitlib.NewGitLib(repoPath)
InitBare(repoPath string) error- создать bare-репозиторийNewRepoInitializer()- интерфейсный адаптер для инициализации (RepoInitializer)GetBranches() ([]string, error)- список ветокHasCommits() (bool, error)- есть ли коммитыGetTreeEntries(branch, treePath string) ([]TreeEntry, error)- элементы дереваGetTreeNames(branch string) ([]string, error)- имена файлов/папок в корне дереваShowFile(branch, path string) ([]byte, error)- содержимое файлаGetLogCommits(branch string, limit int) ([]CommitLogEntry, error)- история коммитовArchiveTarGz(branch string) ([]byte, error)- архивtar.gzпо ветке