GIVEN M.A.R.I.L.L.A has GSB installed on a beefy Linux server with many CPU cores and with an up-to-date version of Git installed
WHEN she executes any gsb operation
THEN then behind the scenes the Git executable will perform the relevant operations instead of libgit2
SO that the operations are performed in a way that takes advantage of all the multiprocessing power and other improvements available in the command-line tool
Notes
The logic should be:
If the Git executable exists on the system, then use it.
Otherwise, default back to pygit2.
The advantage of having that _git.py module is that it can be fully swapped out with another that implements the same interface using a different backend. Cleanup work around this interface is already scoped for #43.
GIVEN M.A.R.I.L.L.A has GSB installed on a beefy Linux server with many CPU cores and with an up-to-date version of Git installed
WHEN she executes any
gsb
operationTHEN then behind the scenes the Git executable will perform the relevant operations instead of libgit2
SO that the operations are performed in a way that takes advantage of all the multiprocessing power and other improvements available in the command-line tool
Notes
The logic should be:
The advantage of having that
_git.py
module is that it can be fully swapped out with another that implements the same interface using a different backend. Cleanup work around this interface is already scoped for #43.