You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Flux supports two git implementations: libgit2 and go-git. They do not have feature parity, which the two main problems being:
Shallow clones is only supported by go-git. Which results in less data being transmitted through the network at every clone operation.
Git V2 Protocol is only supported by libgit2. Servers that only support this protocol (e.g. Azure DevOps) won't work with go-git.
We should build a third git implementation type (a.k.a auto), which removes the need from users to understand the difference between the implementations, and always try to use whichever is the most optimal.
On a high-level, the new implementation could take into account:
Server fingerprint: query the SSH banner and HTTP headers.
Protocol Awareness: find ways to identify what Git protocol version is being used, which may be easier over HTTP scheme.
The text was updated successfully, but these errors were encountered:
Flux supports two git implementations:
libgit2
andgo-git
. They do not have feature parity, which the two main problems being:go-git
. Which results in less data being transmitted through the network at every clone operation.libgit2
. Servers that only support this protocol (e.g. Azure DevOps) won't work withgo-git
.We should build a third git implementation type (a.k.a
auto
), which removes the need from users to understand the difference between the implementations, and always try to use whichever is the most optimal.On a high-level, the new implementation could take into account:
The text was updated successfully, but these errors were encountered: