GIT hosting as a safe APP

For years there has been talk about how GIT is a wonderful tool, but the extreme centralization in hosting services being a problem. Currently GITLab has been down for for some time and data loss is expected.

A SAFE GIT hosting app could have the potential to capture the market quite easily. But is it possible to support GIT protocol requests on SAFE? Or would the client have to be updated?

5 Likes

It would probably require a modified implementation of Git server and a modified Git client as well but since it is only about storing files and serving them it should be possible to use git on the Safe network.

EDIT : Thinking about it a bit more, we would actually only require an interface app, we could use the current git client and use a remote url served by a local app (the interface, which would listen to for example 127.0.0.1:12345/myGitReposMaidsafeName), then the interface app would take care of storing/reading the files on maidsafe

4 Likes

There is one in the works that uses webtorrent (DHT) that may be easier to adapt to SAFE…

3 Likes

I started looking into it and started implementing a bit of code.

The idea is to create a [git-remote-helper]
(https://git-scm.com/docs/git-remote-helpers) : git-remote-safe
when calling : git clone safe://longName/service
or : git fetch safe://longName/service
git would redirect the command to the helper
The helper would ask permission to connect on the Maidsafe launcher
And then copy/read files using MaidSafe DNS API

Playing with access right on the different (sub)folder contained in .git we could control what is public and what is private (HEAD or master for example you wouldn’t want anyone to be able to modify)

Problem arise with fetch because of a missing maidsafe API I highlighted some times ago : https://forum.safedev.org/t/missing-dns-api-service-subfolder/194

You basically cannot discover subfolder of a service using the DNS API, this will probably prevent us from implementing fetch capability

7 Likes