refactor for git