SVN库revert和update操作
Revert to this revision和Revert changes from this revision
譬如有个文件,有十个版本,假定版本号是1,2,3,4,5,6,7,8,9,10。
Revert to this revision: 如果是在版本6这里点击“Revert to this revision”,表示7~10的修改全部作废,历史倒退到了版本6那个年代。
Revert changes from this revision:如果是在版本6这里点击“Revert changes from this revision”,表示版本6这个历史事件被抹杀了,只剩下除版本6外的9个历史事件了。
如果俺是同时选择了6,7,8三个历史时期并点击“Revert changes from this revision”,表示抹杀6~8这仨历史时期。
同理,如果同时选择7~10,然后点击“Revert changes from this revision”,则效果跟在版本6这里点击“Revert to this revision”是一样的。
Revert to this revision和Update Item to revision
update的意思是更新,revert的意思是撤销。
更新至某一个版本的意思是获取版本库中的某一个特定的版本到工作拷贝里。需要注意的是,如果你在上面做修改的话,那么你是在基于旧版本的基础上做修改,当你提交的时候SVN会提示你您当前工作拷贝版本已经过期(即不是基于版本库最新版本来做修改的),这个时候你必须先update到最新版本。
这个功能一般是用于获取一份只读拷贝用,例如你有一个工程用到了某个版本的dll,有一天有人把dll修改了并且提交了,然后你update到最新版本时发现编译不通过了,这个时候如果你想暂时先使用旧版本的话,那么你可以使用update to this revision的功能。
revert的功能主要用来进行版本库回滚用的,当你发现某个版本的文件不是很好想恢复到某个特定版本,这时你就可以使用这个功能。
选择Revert to this revision,这个时候,会将你工作拷贝里面该文件回滚到这个版本(相当于你在最新版本上面不断的ctrl-z撤销,而版本号还是最新的版本号,然后你所做的修改还是相当于基于最新版本所做的修改),然后你就可以在这个版本上面进行修改,然后再提交了。或者直接提交也可以。注意:回滚只是将工作拷贝的回滚到某个版本,而不是更新版本库,只有当你回滚之后再次提交版本库才会更新,别人再次update的时候才能得到你回滚的版本。