Closed Dieterbe closed 3 years ago
This is a tough one.
go-git has some advantages: easy creation of in-memory repository objects could make integration tests quite fast. Also, applications that pull in dstask as a library would benefit from a pure-go git implementation.
However, there might be some rough edges for command line users.
I can't speak to the quality of the git libraries. Seems safer to stick to exec.Command then and spend our limited FOSS time on things with higher payoff :) (new features etc)
The main reason is I use a yubikey, which uses a GnuPG2 running as an SSH agent and assumed a go-based git library wouldn't be able to use an SSH agent. I didn't research it though. Another reason is I'm super familiar with the git cli and not a library.
That said, it would make porting dstask (using it like a library) to iOS/Android less painful.
porting dstask (using it like a library) to iOS/Android
:heart_eyes: a mobile app would be awesome!
Yes it would! Having no smartphone app is a reason quite a lot of people don't use dstask yet. A friend of mine has said he wants to write an iOS and/or Android app for dstask (hello @botto ! )
since this was a discussion, not an actual issue, i'm going to close this.
Hello, I see in util.go that dstask currently executes the
git
binary for git operations. I was wondering if there's any particular opinions on this vs a golang git library such as go-git. There seems to be a couple options but the official one, git2go requires cgo so i would stay away from that.