add more codes
roughly finished git to cc without test