Eventually after much head-scratching I tracked down the problem.
In the original Subversion repository, a number of source files had been checked in with the Subversion svn:executable
property set. This property is honoured by git svn
, and when the file is ultimately presented in the Git working directory it has the execute permission property set. Even though this is how the file is configured in Git, EGit looks like it isn't seeing the permission set in the repository and is treating it a difference between the repository copy and the working copy... hence it appears in the list of unstaged changes.
I fixed the issue simply using chmod -x
on the affected files from the Cygwin bash shell, and committed the changes. I understand that setting the Git property core.filemode=false
should also resolve the issue, although I've yet to try this.