moved 'unpushed local commit' logic to Git.local_commits