Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Any ways to resuming download on HG or GIT changsets pulling?

I try to find way for update speсial software (Python application) on client. Client already have HG or GIT, and I can dictate any requirements for client environment.

But client have slowly and breaking out internet connection.

HG, GIT and others tools ideal for update procedure by changesets with minimal traffic bandwidth.

But if changesets became big (jump from small revision number to HEAD) downloading them may be cancled by connection lost.

Can HG, GIT or others resuming download by pull commands?


One way to use bundle of changesets, download them with wget/curl and others with resuming download option. Then apply bundle.

In this solution server must provide bundles for every revision jumps combination FROM to TO (1-2, 1-15, 2-15). Ideally server must have "Lazzy bundle creation" by client request.

wget -c https://repo.myserver.com/bundle?from=rev1&to=rev2

Has any others ways for client software update from source code repository?

Sorry for my poor English :(

Thanks

like image 755
estin Avatar asked Oct 25 '22 07:10

estin


1 Answers

Git is particularly efficient and resilient for such network breakdown effects.

Efficient because, it only pulls the objects in the tree that are changed or newly added and even transmits the compressed objects.

Resilient because, unless all the necessary objects are present, the branch is not furthered. That is a merge happens only after the fetch is complete.

If ever the fetch were to be interpreted, the next time the fetch is executed, only the new objects that were not earlier received will be received, this time.

Bundling--transferring-through-wget--applying-bundle is obviously fail proof, but I am not so sure, if that is really necessary.

like image 81
lprsd Avatar answered Oct 27 '22 09:10

lprsd