I'm having a hard time figuring out a good title, so if you have an idea how to express my problem in a clearer way, please edit.
I am working on a big project which uses SVN. Since I am used to using git (committing often, working with many branches) and also don't want to change my workflow, I set up a git repository in the parent directory of my SVN working copy for local version control. All SVN related files have been included in the .gitignore. Using git-svn was not really an option for me because I didn't want to "pollute" the SVN repo with all my tiny commits.
Now recently I have begun work which is closely related to the work of another person (call him person B) on the same project. He however does not feel ready yet to push his work into the SVN repository, so initially he gave me his changed files manually and I included them into my project in branch topic. Since this procedure is quite laborious, we decided to use git for exchanging progress on the project.
Because I did not want to mess with the SVN of person B, my idea was the following:
- I created a bare repo from my git repo and put it on a server which is accessible by person B
- person B runs git init, copies my.gitignorefile, runsgit add .and makes his initial commit
- person B renames his branch to topic, adds the bare repo I created as remoteoriginand fetches all the data
Since I had already included his work in my repo, person B's topic and origin/topic should now not differ at all. But they do.
Two problems that I have encountered (there are possibly more):
- Some files have been added to person B's git repo even though they were on the .gitignorelist (which is the exact same file that works fine for me)
- When running git diff topic origin/topicit shows one file which definitely exists in both topic and origin/topic as deleted (path in origin/topic:/dev/null)
Does anybody have an idea what is going wrong here? Also suggestions for alternatives are welcome, but note that person B pushing his changes to the SVN repo and/or abandoning SVN altogether on the whole project are no options.
 
     
    