Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I just started using SparkleShare to sync my documents between computers. SparkleShare uses Git for almost everything. My initial few commits are large: several gigabytes each. They got pushed to the Git server successfully.

My home network is very flaky now, so my second computer is having a hard time completing the git pull: the network connection aborts partway through.

My question: if the second computer keeps trying to pull a single giant changeset, will it eventually succeed? Is it a cumulative action, or does it lose its place when the network connection is aborted?

From what little I know of Git's protocol, it seems that the pull makes overall progress each time it successfully downloads each blob (file). Commits are merely small files that point at the blobs. So I suspect that the second PC will eventually synchronize despite the flaky network, unless the network is so flaky that the PC never gets the opportunity to download a single blob in full. But I would like some confirmation.

share|improve this question

1 Answer 1

up vote 1 down vote accepted

git pull is simply syntax sugar for running git fetch and then git merge. git fetch downloads commits individually, so running git pull again should continue from where you left off, since git doesn't need to re-download the blobs that it already downloaded.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.