Bug Description
As in the summary: trying to implement a smart git server works fine with small repos, but essentially locks up until it runs out of memory for a big git repo - I'm testing with the Linux kernel and a small handler library I put together (intended to be part of another project).
Obviously this is a big repo (hence a good use of a pathological use case) but it's not enormous - 8gb, even if read entirely into RAM, would fit on this machine.
go-git Version
v6.0.0-20251009132922-75a182125145
Steps to Reproduce
- Clone the Linux kernel -
git clone https://github.com/torvalds/linux.gt
- Clone the test application
git clone https://github.com/wrouesnel/go.git-http-handler
- Serve the Linux kernel locally:
cd go.git-http-handler
go run ./cmd/git-server --base-dir ../linux.git
- Attempt a git clone from the local server in another window
git clone http://localhost:8080
This will just not complete.
Additional Information
No response
Bug Description
As in the summary: trying to implement a smart git server works fine with small repos, but essentially locks up until it runs out of memory for a big git repo - I'm testing with the Linux kernel and a small handler library I put together (intended to be part of another project).
Obviously this is a big repo (hence a good use of a pathological use case) but it's not enormous - 8gb, even if read entirely into RAM, would fit on this machine.
go-git Version
v6.0.0-20251009132922-75a182125145
Steps to Reproduce
git clone https://github.com/torvalds/linux.gtgit clone https://github.com/wrouesnel/go.git-http-handlercd go.git-http-handler go run ./cmd/git-server --base-dir ../linux.gitThis will just not complete.
Additional Information
No response