Skip to main content

Module push

Module push 

Source
Expand description

smart HTTP への push (sans-io の状態機械)。

fetch 側 (clone) と同じ方針で、HTTP の送受信は呼び出し側の責務とする。

GET  <url>/info/refs?service=git-receive-pack   (advertisement)
POST <url>/git-receive-pack                     (update commands + packfile)

送る packfile は呼び出し側が用意する (bundle の全 object を pack::write_pack で詰め直す等)。remote が既に持つ object が含まれていても害はない。

Structs§

Push
PushOutcome
push の結果。

Enums§

Request
呼び出し側が送るべき HTTP request。path は repository URL からの相対。

Constants§

INFO_REFS_PATH
advertisement の要求先 (repository URL からの相対 path)。
RECEIVE_PACK_PATH
update の要求先 (repository URL からの相対 path)。
REQUEST_CONTENT_TYPE
POST body の Content-Type。