Subversion Mixed Revisions?
My question is essentially the same as this one here.
I'm using AnkhSVN in Visual Studio 2010. I was under the im开发者_如何学编程pression that if I committed/updated the entire solution (I spammed both commit and update with all possible combinations), then the entire revision, and this means every single file in the revision would be updated to one global revision.
Lets assume there are 3 files: A, B, and C. A is at revision 1, B is at revision 1, and C is at revision 1. Let's say I revise C 20 times. C is now at revision 21. But I would expect A and B to also be at revision 21. But they're not! I look at the Repository Explorer and it says A and B are still at revision 1, while C is at revision 21. I thought the concept of Subversion was to make them all at revision 21. What the heck is going on?
A side question: if this is true, and A, B, and C really are at revision 21 but not displayed, then how do I get, lets say...revision 14 from A and B if they jumped from revision 1 to 21 directly?
The revision you are seeing is the last revision the file was updated in. So if file A is revision 21 and file B is showing revision 14 that would mean that A was updated at rev. 21 and B at rev. 14, while the repository it self might for example be at rev. 30 because of commits to other files.
Given that B has not changed between rev. 14 and rev. 30, the same code for B will be retrieved from SVN for all revs of file B from 14 to 30 or which ever later revision introduces a change to file B.
精彩评论