go-git
git2go
go-git | git2go | |
---|---|---|
20 | 2 | |
5,498 | 1,907 | |
1.3% | 0.2% | |
9.0 | 0.0 | |
3 days ago | 2 months ago | |
Go | Go | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
go-git
-
Show HN: Gogit – Just enough Git (in Go) to push itself to GitHub
I interpret "aims to be fully compatible" as meaning the operations it implements are intended to be compatible with how Git implements those operations. I do not interpret this statement as saying they implement all features of Git.
They offer a document which directly shows what is and isn't supported, and it specifically notes quite a few things that aren't supported yet: https://github.com/go-git/go-git/blob/master/COMPATIBILITY.m...
The godoc also says right upfront it "nowadays covers the majority of the plumbing read operations and some of the main write operations, but lacks the main porcelain operations such as merges." - https://pkg.go.dev/github.com/go-git/go-git/v5#pkg-overview
> I'm saying it's not a reasonable choice over just using git directly, and is unlikely to ever be.
OK, that's apparently true for your use-case. But again, what go-git implements is directly useful to a number of very popular projects, as well as literally two thousand less popular ones.
I find the exported functionality to be high quality, at least for my own use-case. I'm not commenting on the code quality. If I need a shed for bikes, and someone is giving out free but ugly bikesheds, I'm thankful. I don't complain about the color of the bikeshed.
- [Golang] Ejecutar comandos Go-git sobre SSH
-
Git framework/library for Java
The go frameworks has some particular limitations at the moment (merge, rebase https://github.com/go-git/go-git/blob/master/COMPATIBILITY.md) but overall great framework.Used for some go tools..
- Go-Git: A highly extensible Git implementation in pure Go
-
Auto fetch config from Git
You can monitor the sha of your config repos main branch with this I expect. https://github.com/go-git/go-git
-
Is there a way to clone remote git repositories programmatically with go, without the need to import a whole dependency for that?
I'm remaking a package named owl. One of the features of this package is the ability to clone remote repositories. The first time I affront this problem, I solved it using go.Cmd and git command. Is there a way to achieve something similar without importing or using a dependency like go-git. Something like download files via http, ssh or something similar.
-
Git as back end for applications like Figma and Google Docs
I think there are already some Git SDKs out there. For example https://github.com/go-git/go-git
-
Kitsch-Prompt - golang based cross-platform shell prompt
I see that you’re using go-git, which has a problem with worktree.Status being unusably slow—and in a prompt you’ll most certainly need to use it. I know because I tried writing my prompt using go-git, and had it hang on a work repo for a good minute. Eventually bit the bullet and switched to git2go (libgit2 bindings; uses cgo).
- Ask HN: Is there a good tutorial on how to create a GitHub clone?
- Small Side Project On Sunday: Small Tool To Bump The Version
git2go
- Show HN: Gogit – Just enough Git (in Go) to push itself to GitHub
-
How to install pre-requisite software for binary
Another really good option you should check out is using go-git (although many features are missing IMO, I had issues mainly with git blame), or git2go (but it requires linking to libgit2 which sux, also some features are missing like flags and low-level stuff).
What are some alternatives?
watchman - Watches files and records, or triggers actions, when they change.
go-git
sapling - A Scalable, User-Friendly Source Control System.
gittp - :octocat: Git HTTP backend in go
git - GitGitGadget's Git fork. Open Pull Requests here to submit them to the Git mailing list
hgo - Hgo is a collection of Go packages providing read-access to local Mercurial repositories.
OS-Lab
gh - Scriptable server and net/http middleware for GitHub Webhooks.
scalar - Scalar: A set of tools and extensions for Git to allow very large monorepos to run on Git without a virtualization layer
glab - The GitLab CLI tool. Archived: now officially adopted by GitLab as the official CLI tool and maintained at https://gitlab.com/gitlab-org/cli. See https://github.com/profclems/glab/issues/983
kvm-guest-drivers-windows - Windows paravirtualized drivers for QEMU\KVM
go-vcs - manipulate and inspect VCS repositories in Go