At the moment Fetch/Clone options do not include Timeout as a parameter that can be set, and niether respect Context deadline when issuing ssh/http requests.
Suggestions
It would be great to be able to override timeout on a per request basis as opposed to only having it set globally.
It would also be great to have instead of top level functions, or complimentary to them a git.Client type with the same functionality exposed. This way if multiple threads / workers are using git Client they could all have a personal instance, with personal configuration.
Context:
At the moment Fetch/Clone options do not include Timeout as a parameter that can be set, and niether respect Context deadline when issuing ssh/http requests.
Suggestions
It would be great to be able to override timeout on a per request basis as opposed to only having it set globally.
Either as a parameter:
Or as a context with a deadline:
Furthermore it would be great to be able to set the Transport on a per request basis.
It would also be great to have instead of top level functions, or complimentary to them a git.Client type with the same functionality exposed. This way if multiple threads / workers are using git Client they could all have a personal instance, with personal configuration.
Hacky Workaround
Currently the only workaround I was able to come up with is defining a wrapper type for AuthMethod:
And then calling clone like this: