views:

617

answers:

2

I've started using SVN before a few weeks. I am facing a weird problem right now. We have a file, which was added by me to the repository. Another developer checked it out yesterday, made some modifications to it, and comitted it to the repository. Today, I made some modifications to that file and comitted it to the repository. But it didn't ask me to merge the changes when I comitted that file, so now I only have the version which I had modified, and the changes done by the other developer are not even showing up in the log.

What am I missing here? How should I go about merging both the changes? We are using TortoiseSVN as a client.

EDIT: All other developers are able to see the log entry in their SVN clients!! So, it seems that the commit was properly done.

+1  A: 

It sounds as your working copy isn't properly updated. I'm not familiar with TortoiseSVN, but try to update your working copy and check the log again. Your changes has probably been merged silently.

sunny256
+2  A: 

It sounds like you should have been in this situation, quoth the Turtle Book:

Locally changed, and out of date
The file has been changed both in the working directory and in the repository. An svn commit of the file will fail with an “out-of-date” error. The file should be updated first; an svn update command will attempt to merge the public changes with the local changes. If Subversion can't complete the merge in a plausible way automatically, it leaves it to the user to resolve the conflict.

I would verify two things:

  1. The other developer's work was actually committed correctly. If the log does not reflect these changes, I'd guess that it might be the case that they were not committed properly.
  2. That your working copy wasn't updated/merged without you realizing it.
Doug