SVN for ClearCase user. How to use?

2019-07-03 16:35发布

问题:

we used to work with IBM Rational ClearCase. now we started a new project on linux (ubuntu) and for that we use SVN (tortoise).

i would like some help understanding it. for example: what is "making a baseline" in SVN? i don't understand all this versions numbers. we a a MAIN trunck/branch (which should be equivalent to a stream with a view on it in clear case) and under it everyone have their own branches (their own stream with thier own views on it). if i press the svn version tree i see a lot of number a cant relize where my branch came from.

thanks in advance :-)

回答1:

As explained in What are the basic ClearCase concepts every developer should know?, the main difference you will find between ClearCase and most of the more recent VCS is:

ClearCase reasons file-by-file, and not on the repository level.

So when ClearCase makes a baseline, it actually takes all the latest versions of the files of a given component, and apply a label, for each file.

SVN will simply make an atomic operation, making a new revision of the repository with a new tag (which is actually a cheap copy in a tag "directory", like SVN branches: see "What do you use the svn tags directory for anyways?")

Note also that "baseline" in ClearCase refers to the UCM methodology, which is a complement to ClearCase, and which has no correspondance in UCM.

A baseline in ClearCase is for a "component", ie a specific subset of all the files of a VOB.
An SVN repo is just a massive centralized place where you can version any number of files you want. You can consider a specific directory of that SVN repo as a component (and "tag" just that), but that is entirely at your discretion: you won't "declare" a component in SVN first, before "baselining" it.



回答2:

a good resource to get an overview is the SVN book:

  • http://svnbook.red-bean.com/

note: SVN does not use the term baseline. it uses tags instead, which is maybe a different approach to the baseline concept in ClearCase.