1. 18 Oct, 2010 1 commit
  2. 28 Feb, 2010 1 commit
    • Larry D'Anna's avatar
      git-push: make git push --porcelain print "Done" · 77555854
      Larry D'Anna authored
      The script calling git push --porcelain --dry-run can see clearly from the
      output if an update was rejected.  However, it will probably need to distinguish
      this condition from the push failing for other reasons, such as the remote not
      being reachable.
      
      This patch modifies git push --porcelain to print "Done" after the rest of its
      output unless any errors have occurred.  For the purpose of the "Done" line,
      knowing a ref will be rejected in a --dry-run does not count as an error.
      Actual rejections in non --dry-run pushes do count as errors.
      Signed-off-by: default avatarLarry D'Anna <[email protected]>
      Acked-by: Ray's avatarTay Ray Chuan <[email protected]>
      Signed-off-by: default avatarJunio C Hamano <[email protected]>
      77555854
  3. 05 Nov, 2009 1 commit
    • Shawn O. Pearce's avatar
      Smart push over HTTP: client side · de1a2fdd
      Shawn O. Pearce authored
      The git-remote-curl backend detects if the remote server supports
      the git-receive-pack service, and if so, runs git-send-pack in a
      pipe to dump the command and pack data as a single POST request.
      
      The advertisements from the server that were obtained during the
      discovery are passed into git-send-pack before the POST request
      starts.  This permits git-send-pack to operate largely unmodified.
      
      For smaller packs (those under 1 MiB) a HTTP/1.0 POST with a
      Content-Length is used, permitting interaction with any server.
      The 1 MiB limit is arbitrary, but is sufficent to fit most deltas
      created by human authors against text sources with the occasional
      small binary file (e.g. few KiB icon image).  The configuration
      option http.postBuffer can be used to increase (or shink) this
      buffer if the default is not sufficient.
      
      For larger packs which cannot be spooled entirely into the helper's
      memory space (due to http.postBuffer being too small), the POST
      request requires HTTP/1.1 and sets "Transfer-Encoding: chunked".
      This permits the client to upload an unknown amount of data in one
      HTTP transaction without needing to pregenerate the entire pack
      file locally.
      Signed-off-by: default avatarShawn O. Pearce <[email protected]>
      CC: Daniel Barkalow <[email protected]>
      Signed-off-by: default avatarJunio C Hamano <[email protected]>
      de1a2fdd
  4. 06 Aug, 2009 1 commit
  5. 02 May, 2009 1 commit
    • Nicolas Pitre's avatar
      allow OFS_DELTA objects during a push · b74fce16
      Nicolas Pitre authored
      The fetching of OFS_DELTA objects has been negotiated between both peers
      since git version 1.4.4.  However, this was missing from the push side
      where every OFS_DELTA objects were always converted to REF_DELTA objects
      causing an increase in transferred data.
      
      To fix this, both the client and the server processes have to be
      modified: the former to invoke pack-objects with --delta-base-offset
      when the server provides the ofs-delta capability, and the later to send
      that capability when OFS_DELTA objects are allowed as already indicated
      by the repack.usedeltabaseoffset config variable which is TRUE by
      default since git v1.6.0.
      Signed-off-by: default avatarNicolas Pitre <[email protected]>
      Signed-off-by: default avatarJunio C Hamano <[email protected]>
      b74fce16
  6. 09 Mar, 2009 1 commit
  7. 10 Nov, 2007 1 commit
    • Andy Whitcroft's avatar
      Teach send-pack a mirror mode · 28b9d6e5
      Andy Whitcroft authored
      Existing "git push --all" is almost perfect for backing up to
      another repository, except that "--all" only means "all
      branches" in modern git, and it does not delete old branches and
      tags that exist at the back-up repository that you have removed
      from your local repository.
      
      This teaches "git-send-pack" a new "--mirror" option.  The
      difference from the "--all" option are that (1) it sends all
      refs, not just branches, and (2) it deletes old refs you no
      longer have on the local side from the remote side.
      
      Original patch by Junio C Hamano.
      Signed-off-by: default avatarAndy Whitcroft <[email protected]>
      Signed-off-by: default avatarJunio C Hamano <[email protected]>
      28b9d6e5
  8. 03 Nov, 2007 1 commit