git.limo icon indicating copy to clipboard operation
git.limo copied to clipboard

Move Gitrekt into own repo

Open kloenk opened this issue 3 years ago • 6 comments

We are currently also looking at writing an git forge with elixir. We favor some different designs, like not using the erlang ssh module, indieweb integration and a plain json api.

If you could move gitrekt into its own repo, we could work on that part together.

kloenk avatar Dec 05 '21 22:12 kloenk

Hi @Kloenk, the :gitrekt app is currently part of an umbrella application and could definitely be moved to it's own repository and Hex package. The interface is clean and can be used a a basic building block for Git related projects.

Note that you will have to implement your own SSH, HTTP(S), etc. transport protocols around GitRekt.WireProtocol. Also have a look at the GitRekt.GitRepo protocol and the GitGud.Repo and GitGud.RepoPool implementation. See #38 for more details.

I don't have much time left currently to work on this right now (christmas coming and professional projects to finish). But I will come back to this issue later on and try to get things moving.

Also, note that the :gitrekt app has currently no unit-tests at all. I'd like to implement a test helper module built-around System.cmd/3 to run git command and add unit and integration tests for GitRekt.Git, GitRekt.GitAgent, etc.

redrabbit avatar Dec 10 '21 20:12 redrabbit

Yep already created a test repo to play with it. But I think I will use gitaly, as ist rpc calls and has many helpful features. Just have to teach it that I'm not a gitlab server :)

kloenk avatar Dec 10 '21 21:12 kloenk

I would love to be able to use Gitrekt independently from GitLimo. That'd be a great contribution to the Elixir community as there no other good binding to Git for Elixir so far, AFAIK.

mekeor avatar Mar 21 '22 22:03 mekeor

@mekeor You can easily use Gitrekt independently already. Drop

{:gitrekt, git: "https://github.com/almightycouch/gitgud", branch: "master", sparse: "apps/gitrekt"}

in your mix deps :)

hrefhref avatar Apr 28 '22 22:04 hrefhref

Yep already created a test repo to play with it. But I think I will use gitaly, as ist rpc calls and has many helpful features. Just have to teach it that I'm not a gitlab server :)

@kloenk, what has been your experience with Gitaly? I'm building a localization platform with Git in its core, and I was debating between using Gitaly or building something on Elixir/Erlang.

pepicrft avatar Mar 10 '23 09:03 pepicrft

I sadly hat not much more time, working on it, so not sure of the current state. It looked usable, but some quirks to work around

kloenk avatar Mar 10 '23 11:03 kloenk