SVN Commit results in Action = Replacing, not Modified

A SQL Server Management Studio add-in to source control your database in Subversion or Team Foundation Server.

SVN Commit results in Action = Replacing, not Modified

Postby d843nred » Tue Apr 15, 2014 3:33 pm

When I "Keep Mine" on the Commit Changes tab and then Commit to SVN (Dedicated Database, and this has happened both for stored procedure changes and for changing column order in tables), it results in the SVN history on the object showing an Action of "Replacing" rather than "Modified".

If I TortoiseSVN - Show Log on the object, it only shows me one revision with an action of "Replacing". If I double-click the object name, I can see the previous version of the object, but no history before that.

If I Show Log on the containing folder and step through the history there, I can see changes to the object in the past.

Do I have a setting in SQL Source Control configured somehow that is causing this? Other developers are not seeing this behavior. They have only SQL Source Control. I have the Developer Bundle, as I manage the build process and do production support.
Posts: 2
Joined: Wed Feb 12, 2014 2:51 pm

Postby Evan Moss » Thu Apr 17, 2014 6:15 pm


Thanks for your post.

I just did some tinkering and it looks like "replacing" is actually the appropriate behavior in this situation.

Let's say your copy of the database is on revision #5, your repository is on revision #6 (which includes a change to object x), and then you change object x in your database. If the difference between 5 and 6 is different than the difference between 5 and 7 (the change you just made), this will show up as a conflict. If you choose to "Keep Mine" and commit, you're basically telling source control, get rid of whatever version 6 is and put version 7 in there instead. (You'd only see 5 and 7 in the revision history also, because 6 isn't involved in the historical chain.)

Now, if you were to go to a different database that's still on revision 6 and modify object x again (causing a 6-7 vs 6-8 conflict) and select "Keep Mine", you would see "replace" again in the SVN log, and you'd only see 6 and 8 in the revision history.

The only reason I can think that your colleagues would be seeing different behavior is if they weren't in conflict situations.

Please let me know if you have further questions.

Evan Moss
Product Support
(866) 627-8107
Evan Moss
Posts: 112
Joined: Wed Jun 12, 2013 8:56 pm

Re: SVN Commit results in Action = Replacing, not Modified

Postby rlevine » Mon Mar 27, 2017 6:37 pm

This is causing many issues for us.
Our developers are making changes and at times there may be a conflict in which they select keep mine.
We have noticed many times that the checkin history in SVN is all gone (replaced by the latest checkin) and it makes auditing and executing code reviews very challenging.
IMHO: This SHOULD NOT remove all the history items. If you want to argue that it should remove just the single one that it is replacing (if that is even possible in SVN), I can maybe hear that argument, but to delete all the history (years worth), does not sound like a feature to me.

:oops: :evil: :oops: :evil:
Posts: 1
Joined: Mon Mar 27, 2017 6:27 pm

Return to SQL Source Control Previous Versions

Who is online

Users browsing this forum: No registered users and 0 guests