Reimplementing “git clone” in Haskell from the bottom up Stefan Saasen - March 2013 - @stefansaasen Reimplementing “git clone” in Haskell from the bottom up Motivation Overview The clone process Git transport and pack wire protocol Transport protocol Reference Discovery Capabilities Packfile negotiation Packet line format Client - Server exchange Implementing ref discovery Implementing pack file n