GIT implementation in C++