summaryrefslogtreecommitdiff
path: root/src/push.h
Commit message (Collapse)AuthorAgeFilesLines
* Remove the callbacks struct from the remoteCarlos Martín Nieto2015-05-131-2/+2
| | | | | | | | | | | | | | Having the setting be different from calling its actions was not a great idea and made for the sake of the wrong convenience. Instead of that, accept either fetch options, push options or the callbacks when dealing with the remote. The fetch options are currently only the callbacks, but more options will be moved from setters and getters on the remote to the options. This does mean passing the same struct along the different functions but the typical use-case will only call git_remote_fetch() or git_remote_push() and so won't notice much difference.
* push: remove own copy of callbacksCarlos Martín Nieto2015-05-131-32/+0
| | | | | | | | | The push object knows which remote it's associated with, and therefore does not need to keep its own copy of the callbacks stored in the remote. Remove the copy and simply access the callbacks struct within the remote.
* push: report the update plan to the callercmn/negotiation-notifyCarlos Martín Nieto2015-04-191-1/+8
| | | | | | | | | It can be useful for the caller to know which update commands will be sent to the server before the packfile is pushed up. git does this via the pre-push hook. We don't have hooks, but as it adds introspection into what is happening, we can add a callback which performs the same function.
* push: remove reflog message overrideCarlos Martín Nieto2015-03-031-5/+1
| | | | We always use "update by push".
* Remove the signature from ref-modifying functionsCarlos Martín Nieto2015-03-031-1/+0
| | | | | | | | | | The signature for the reflog is not something which changes dynamically. Almost all uses will be NULL, since we want for the repository's default identity to be used, making it noise. In order to allow for changing the identity, we instead provide git_repository_set_ident() and git_repository_ident() which allow a user to override the choice of signature.
* remote: remove git_push from the public APIcmn/hide-pushCarlos Martín Nieto2014-12-301-0/+110
| | | | | Instead we provide git_remote_upload() and git_remote_update_tips() in order to have a parallel API for fetching and pushing.
* push: use the common refspec parsercmn/push-refspec-refactorCarlos Martín Nieto2014-11-091-4/+2
| | | | | | | | | | | There is one well-known and well-tested parser which we should use, instead of implementing parsing a second time. The common parser is also augmented to copy the LHS into the RHS if the latter is empty. The expressions test had to change a bit, as we now catch a bad RHS of a refspec locally.
* Initial Implementation of progress reports during pushJameson Miller2013-09-301-0/+5
| | | | | | | | | | | | | | | | | | | | | | This adds the basics of progress reporting during push. While progress for all aspects of a push operation are not reported with this change, it lays the foundation to add these later. Push progress reporting can be improved in the future - and consumers of the API should just get more accurate information at that point. The main areas where this is lacking are: 1) packbuilding progress: does not report progress during deltafication, as this involves coordinating progress from multiple threads. 2) network progress: reports progress as objects and bytes are going to be written to the subtransport (instead of as client gets confirmation that they have been received by the server) and leaves out some of the bytes that are transfered as part of the push protocol. Basically, this reports the pack bytes that are written to the subtransport. It does not report the bytes sent on the wire that are received by the server. This should be a good estimate of progress (and an improvement over no progress).
* Implemented push on the local transportabepern2013-03-111-0/+7
|
* Add git_push_options, to set packbuilder parallelismPhilip Kelley2013-02-111-0/+3
|
* update copyrightsEdward Thomson2013-01-081-1/+1
|
* Push! By schu, phkelley, and congyiwu, et alPhilip Kelley2012-11-281-0/+41