GitGud, GitHub clone entirely written in Elixir

Thanks. After I disable sslverify in git I can push and pull in https.

:+1:

However, git over SSH does not.

Yes, so I did rewrite the entire git-receive-pack implementation a while ago to add support for streaming PACK files directly to disk. This was necessary because my previous implementation was way too slow and memory consumption went through the roof.

While testing intensively, I did not have any problems with small or big repositories :thinking:.

Now GitRekt.WireProtocol.ReceivePack is used by both transport protocols HTTP and SSH. So only the transport implementation differs…

error: remote unpack failed: %GitRekt.GitError{code: -1, message: "missing trailer at the end of the pack"}

Interesting. Seems like the last chunk of data is missing somehow. Maybe I have something wrong. Will check and keep you up to date.

Oh that’s even more interesting :face_with_monocle:.

Very nice project. I like the straightforward, snappy UI. Do you have particular plans in terms of roadmap? An interesting development in terms of code forges is renewed effort to add federation support with the ActivityPub protocol. Gitea has received a NLnet grant and just defined their milestones and both Forgefriends and ForgeFlux are working on similar goals. There’s a Forge Federation general matrix chatroom, if you are interested.

1 Like

On the very off chance that someone is interested in using the libgit2 NIF wrapper from this project, like I was, I extracted it, fixed it up a bit and threw it up here: GitHub - jtippett/gitrekt: Extraction of git.limo's libgit2 wrapper NIF

Big thanks to the author @MarioFlach

5 Likes