refactor diff to not be aware of repository #19