git log object refactoring