This change improves the rad clone command in a few different ways.
The first improvement is to check if the repository already exists before fetching. If it does exist, then there is no need for the fetch to be performed, and can move straight to the checkout.
If the repository does not exist, then the fetch is performed, as per usual. However, it uses a replication factor of 1, so that the fetch finishes as soon as it has the repository in local storage.
The change also improves the output when failures occur while attempting to perform the checkout phase. It will print the failure that occurred and provide a hint message in each case to help debug the failure, or push the caller in the direction of performing the correct action.
This required some changes in test/commands.rs setup. Some tests were using
the rad-clone.md to setup a clone, which would have different output if the
repository did not need to be fetched. In those cases, the rad method for
performing the clone is used instead.
This change improves the rad clone command in a few different ways.
The first improvement is to check if the repository already exists before fetching. If it does exist, then there is no need for the fetch to be performed, and can move straight to the checkout.
If the repository does not exist, then the fetch is performed, as per usual. However, it uses a replication factor of 1, so that the fetch finishes as soon as it has the repository in local storage.
The change also improves the output when failures occur while attempting to perform the checkout phase. It will print the failure that occurred and provide a hint message in each case to help debug the failure, or push the caller in the direction of performing the correct action.
This required some changes in test/commands.rs setup. Some tests were using
the rad-clone.md to setup a clone, which would have different output if the
repository did not need to be fetched. In those cases, the rad method for
performing the clone is used instead.
Changes:
- Rebased on stacked patch
Rebased
Sweet!
LGTM!
Rebased.