move git interaction to separate file