summaryrefslogtreecommitdiff
path: root/sys/src/cmd/git/fetch.c
AgeCommit message (Collapse)Author
2022-04-17git: rename internal 'git/fetch' plumbing to 'git/get'Ori Bernstein
This caused some confusion, so to make it clear that it's plumbing and has nothing to do with 'git fetch', rename it.
2022-04-16git/pull: fetch all branches (please test)Ori Bernstein
there was a diff that went in a while ago to improve this, but it got backed out because it encounters a bug in upstream git -- the spec says that a single ACK should be sent when not using multi-ack modes, but they send back multiple ones. This commit brings back the functionality, and works around the upstream git bug in two different ways. First, it skips the packets up until it finds the start of a pack header. Second, it deduplicates the want messages, which is what seems to trigger the duplicate ACKs that cause us trouble.
2022-03-18git/fetch: use read for reading packfiles instead of readnMichael Forney
2021-12-22git: revert c947bf808 -- it triggers a bug.Ori Bernstein
We seem to have a botch in the protocol negotiation, where we leak some protocol packets into the packfile; this will need to be fixed before we put this change in.
2021-12-20git: fetch all branches by default.Ori Bernstein
when the remote side creates a new branch, it is desirable to have it show up in the repo.
2021-07-27git/fetch: be more robustOri Bernstein
currently, git/fetch prints the refs to update before it fully fetches the pack files; this can lead to updates to the refs before we're 100% certain that the objects are present. This change prints the updates after the packfile has been successfully indexed.
2021-07-18git/fetch: fix overly eager 's/pack/idx/g' in refactorOri Bernstein
This would break pulling. We would try to index into a place that didn't exist.
2021-07-17git/fetch: ensure we clean packfiles on failureOri Bernstein
When pulling into a git repository that is group writable as a non-owner, the pack file is left in place because we do not have permission to remove it. We also leave it behind if we bail out early due to an error, or due to only listing the changes. This pushes down the creation of the file, and cleans it up on error. thanks to Anthony Martin for spotting the bug. git/fetch: ensure we clean packfiles on failure When pulling into a git repository that is group writable as a non-owner, the pack file is left in place because we do not have permission to remove it. We also leave it behind if we bail out early due to an error, or due to only listing the changes. This pushes down the creation of the file, and cleans it up on error. Also, while we're here, clean up index caching, and ensure we close the fd in all cases. thanks to Anthony Martin for spotting the bug.
2021-05-16git: got git?Ori Bernstein
Add a snapshot of git9 to 9front.