It's all about the answers!

Ask a question

SCM Baselines incorrect after SVN import


Tom Frauenhofer (1.3k58435) | asked Oct 15 '09, 6:16 p.m.
Hi

RTC 2.0 Server Linux
RTC 2.0 Client Windows

Beware: first time user of the SVN importer

I have used the SVN importer to import my SVN trunk into a new RTC
component. I checked the box to create baselines for tags and branches.

There's quite a few tags and branches in my SVN repo. Some of the SVN
tags did not get baselines created for them (OTOH some did).

In at least one case, two of the baselines appear to be incorrect. The
two relevant SVN tags represent SVN revisions 2448 and 2450. However,
the two imported baselines are labelled 2447 each. Comparing the two
baselines shows no differences (as you'd expect since they appear to
come from the same, but wrong, SVN revision).

Maybe I'm missing something, but isn't it true that two distinct SVN
tags should be imported as two distinct RTC baselines ?

Any help appreciated
Dave

6 answers



permanent link
Michael Valenta (3.7k3) | answered Oct 16 '09, 10:31 a.m.
FORUM MODERATOR / JAZZ DEVELOPER
Dave,

It's complicated since SVN has no concept of a tag, branch or baseline
but instead only models copies. In that sense, a tag or branch in SVN is
really just another configuration that needs to be imported. The SVN
importer doesn't "import" baselines but instead tries to determine the
best place to create a baseline that will be as close to possible to the
state of the copy representing the tag or branch. Using the baseline as
a starting point, you can then import the tag or branch from SVN to get
the proper configuration into RTC. The wiki page at
http://jazz.net/wiki/bin/view/Main/SCMImport describes how you can
import tags and branches from an SVN repository into RTC.

Hope this helps,
Michael

David Ward wrote:
Hi

RTC 2.0 Server Linux
RTC 2.0 Client Windows

Beware: first time user of the SVN importer

I have used the SVN importer to import my SVN trunk into a new RTC
component. I checked the box to create baselines for tags and branches.

There's quite a few tags and branches in my SVN repo. Some of the SVN
tags did not get baselines created for them (OTOH some did).

In at least one case, two of the baselines appear to be incorrect. The
two relevant SVN tags represent SVN revisions 2448 and 2450. However,
the two imported baselines are labelled 2447 each. Comparing the two
baselines shows no differences (as you'd expect since they appear to
come from the same, but wrong, SVN revision).

Maybe I'm missing something, but isn't it true that two distinct SVN
tags should be imported as two distinct RTC baselines ?

Any help appreciated
Dave

permanent link
Tom Frauenhofer (1.3k58435) | answered Oct 16 '09, 11:10 a.m.
Hi Michael

I'm not sure what you meant when you say "using the baseline as a
statting point, you can them import the tag or branch".

The import seems to have already imported the tag and created a baseline
for it; it's just chosen the wrong place to put the baseline.

Do I need to re-import just that tag, into the existing RTC component ??

Sorry, but I'm not getting it :-(



Michael Valenta wrote:
Dave,

It's complicated since SVN has no concept of a tag, branch or baseline
but instead only models copies. In that sense, a tag or branch in SVN is
really just another configuration that needs to be imported. The SVN
importer doesn't "import" baselines but instead tries to determine the
best place to create a baseline that will be as close to possible to the
state of the copy representing the tag or branch. Using the baseline as
a starting point, you can then import the tag or branch from SVN to get
the proper configuration into RTC. The wiki page at
http://jazz.net/wiki/bin/view/Main/SCMImport describes how you can
import tags and branches from an SVN repository into RTC.

Hope this helps,
Michael

David Ward wrote:
Hi

RTC 2.0 Server Linux
RTC 2.0 Client Windows

Beware: first time user of the SVN importer

I have used the SVN importer to import my SVN trunk into a new RTC
component. I checked the box to create baselines for tags and branches.

There's quite a few tags and branches in my SVN repo. Some of the SVN
tags did not get baselines created for them (OTOH some did).

In at least one case, two of the baselines appear to be incorrect.
The two relevant SVN tags represent SVN revisions 2448 and 2450.
However, the two imported baselines are labelled 2447 each. Comparing
the two baselines shows no differences (as you'd expect since they
appear to come from the same, but wrong, SVN revision).

Maybe I'm missing something, but isn't it true that two distinct SVN
tags should be imported as two distinct RTC baselines ?

Any help appreciated
Dave

permanent link
Michael Valenta (3.7k3) | answered Oct 19 '09, 2:30 p.m.
FORUM MODERATOR / JAZZ DEVELOPER
David,

A tag in subversion is really just another copy of the tree. Because
subversion only really models file trees and copies, it is difficult to
line up baselines precisely with what you refer to as a tag in
subversion (i.e. there aren't really any tags in SVN, only copies of
trees put in a folder named "tags"). I can think of 3 possible reasons
for what you are seeing:

1) The tag in subversion was not "pure". What I mean by that was that
the tag may have been created by multiple copy commands. If we cannot
determine the exact copy point, we label the baseline appropriately
(something like "incomplete" but I don't remember the exact wording used).

2) The copy point was pure but the tag was modified after it was created
(i.e. a tag in SVN is no different then a branch). If this is the case,
you would need to follow the instructions on the wiki page I pointed you
to in order to create a new stream for the tag and import the latest
state of the tag into that stream.

3) It is possible that there is a bug in the importer. I would need to
have access to the dump file in order to determine if that was the case.

I know that this might not help all that much. Suffice it to say that
the Subversion model is significantly different then the RTC model which
leads to confusion over how to deal with branches and tags. If you need
clarification on any of the instructions on the wiki page, let me know.

Michael

David Ward wrote:
Hi Michael

I'm not sure what you meant when you say "using the baseline as a
statting point, you can them import the tag or branch".

The import seems to have already imported the tag and created a baseline
for it; it's just chosen the wrong place to put the baseline.

Do I need to re-import just that tag, into the existing RTC component ??

Sorry, but I'm not getting it :-(



Michael Valenta wrote:
Dave,

It's complicated since SVN has no concept of a tag, branch or baseline
but instead only models copies. In that sense, a tag or branch in SVN
is really just another configuration that needs to be imported. The
SVN importer doesn't "import" baselines but instead tries to determine
the best place to create a baseline that will be as close to possible
to the state of the copy representing the tag or branch. Using the
baseline as a starting point, you can then import the tag or branch
from SVN to get the proper configuration into RTC. The wiki page at
http://jazz.net/wiki/bin/view/Main/SCMImport describes how you can
import tags and branches from an SVN repository into RTC.

Hope this helps,
Michael

David Ward wrote:
Hi

RTC 2.0 Server Linux
RTC 2.0 Client Windows

Beware: first time user of the SVN importer

I have used the SVN importer to import my SVN trunk into a new RTC
component. I checked the box to create baselines for tags and branches.

There's quite a few tags and branches in my SVN repo. Some of the
SVN tags did not get baselines created for them (OTOH some did).

In at least one case, two of the baselines appear to be incorrect.
The two relevant SVN tags represent SVN revisions 2448 and 2450.
However, the two imported baselines are labelled 2447 each.
Comparing the two baselines shows no differences (as you'd expect
since they appear to come from the same, but wrong, SVN revision).

Maybe I'm missing something, but isn't it true that two distinct SVN
tags should be imported as two distinct RTC baselines ?

Any help appreciated
Dave

permanent link
Michael Valenta (3.7k3) | answered Oct 22 '09, 10:51 a.m.
FORUM MODERATOR / JAZZ DEVELOPER
David,

I've done some investigation and it does appear that there is some
anomalies in how the baselines are being placed. In the case I hit, I am
seeing two baselines for the same branch root being created. One is in
the proper place and one obviously isn't. This may be related to the
issue you are having or it may be a different issue. I am investigation
this as part of work item
https://jazz.net/jazz/resource/itemName/com.ibm.team.workitem.WorkItem/97209.

Michael

Michael Valenta wrote:
David,

A tag in subversion is really just another copy of the tree. Because
subversion only really models file trees and copies, it is difficult to
line up baselines precisely with what you refer to as a tag in
subversion (i.e. there aren't really any tags in SVN, only copies of
trees put in a folder named "tags"). I can think of 3 possible reasons
for what you are seeing:

1) The tag in subversion was not "pure". What I mean by that was that
the tag may have been created by multiple copy commands. If we cannot
determine the exact copy point, we label the baseline appropriately
(something like "incomplete" but I don't remember the exact wording used).

2) The copy point was pure but the tag was modified after it was created
(i.e. a tag in SVN is no different then a branch). If this is the case,
you would need to follow the instructions on the wiki page I pointed you
to in order to create a new stream for the tag and import the latest
state of the tag into that stream.

3) It is possible that there is a bug in the importer. I would need to
have access to the dump file in order to determine if that was the case.

I know that this might not help all that much. Suffice it to say that
the Subversion model is significantly different then the RTC model which
leads to confusion over how to deal with branches and tags. If you need
clarification on any of the instructions on the wiki page, let me know.

Michael

David Ward wrote:
Hi Michael

I'm not sure what you meant when you say "using the baseline as a
statting point, you can them import the tag or branch".

The import seems to have already imported the tag and created a
baseline for it; it's just chosen the wrong place to put the baseline.

Do I need to re-import just that tag, into the existing RTC component ??

Sorry, but I'm not getting it :-(



Michael Valenta wrote:
Dave,

It's complicated since SVN has no concept of a tag, branch or
baseline but instead only models copies. In that sense, a tag or
branch in SVN is really just another configuration that needs to be
imported. The SVN importer doesn't "import" baselines but instead
tries to determine the best place to create a baseline that will be
as close to possible to the state of the copy representing the tag or
branch. Using the baseline as a starting point, you can then import
the tag or branch from SVN to get the proper configuration into RTC.
The wiki page at http://jazz.net/wiki/bin/view/Main/SCMImport
describes how you can import tags and branches from an SVN repository
into RTC.

Hope this helps,
Michael

David Ward wrote:
Hi

RTC 2.0 Server Linux
RTC 2.0 Client Windows

Beware: first time user of the SVN importer

I have used the SVN importer to import my SVN trunk into a new RTC
component. I checked the box to create baselines for tags and
branches.

There's quite a few tags and branches in my SVN repo. Some of the
SVN tags did not get baselines created for them (OTOH some did).

In at least one case, two of the baselines appear to be incorrect.
The two relevant SVN tags represent SVN revisions 2448 and 2450.
However, the two imported baselines are labelled 2447 each.
Comparing the two baselines shows no differences (as you'd expect
since they appear to come from the same, but wrong, SVN revision).

Maybe I'm missing something, but isn't it true that two distinct SVN
tags should be imported as two distinct RTC baselines ?

Any help appreciated
Dave

permanent link
Tom Frauenhofer (1.3k58435) | answered Oct 22 '09, 1:48 p.m.
Hi Michael and thanks for expanding on the reasons why SVN tags might be
difficult to import.

I guess I could explicitly import each SVN tag (rather than the trunk)
but won't I then have multiple streams (one for each tag).
Does that lead to source file copies within the RTC database ?

Cheers

Michael Valenta wrote:
David,

I've done some investigation and it does appear that there is some
anomalies in how the baselines are being placed. In the case I hit, I am
seeing two baselines for the same branch root being created. One is in
the proper place and one obviously isn't. This may be related to the
issue you are having or it may be a different issue. I am investigation
this as part of work item
https://jazz.net/jazz/resource/itemName/com.ibm.team.workitem.WorkItem/97209.


Michael

Michael Valenta wrote:
David,

A tag in subversion is really just another copy of the tree. Because
subversion only really models file trees and copies, it is difficult
to line up baselines precisely with what you refer to as a tag in
subversion (i.e. there aren't really any tags in SVN, only copies of
trees put in a folder named "tags"). I can think of 3 possible reasons
for what you are seeing:

1) The tag in subversion was not "pure". What I mean by that was that
the tag may have been created by multiple copy commands. If we cannot
determine the exact copy point, we label the baseline appropriately
(something like "incomplete" but I don't remember the exact wording
used).

2) The copy point was pure but the tag was modified after it was
created (i.e. a tag in SVN is no different then a branch). If this is
the case, you would need to follow the instructions on the wiki page I
pointed you to in order to create a new stream for the tag and import
the latest state of the tag into that stream.

3) It is possible that there is a bug in the importer. I would need to
have access to the dump file in order to determine if that was the case.

I know that this might not help all that much. Suffice it to say that
the Subversion model is significantly different then the RTC model
which leads to confusion over how to deal with branches and tags. If
you need clarification on any of the instructions on the wiki page,
let me know.

Michael

David Ward wrote:
Hi Michael

I'm not sure what you meant when you say "using the baseline as a
statting point, you can them import the tag or branch".

The import seems to have already imported the tag and created a
baseline for it; it's just chosen the wrong place to put the baseline.

Do I need to re-import just that tag, into the existing RTC component ??

Sorry, but I'm not getting it :-(



Michael Valenta wrote:
Dave,

It's complicated since SVN has no concept of a tag, branch or
baseline but instead only models copies. In that sense, a tag or
branch in SVN is really just another configuration that needs to be
imported. The SVN importer doesn't "import" baselines but instead
tries to determine the best place to create a baseline that will be
as close to possible to the state of the copy representing the tag
or branch. Using the baseline as a starting point, you can then
import the tag or branch from SVN to get the proper configuration
into RTC. The wiki page at
http://jazz.net/wiki/bin/view/Main/SCMImport describes how you can
import tags and branches from an SVN repository into RTC.

Hope this helps,
Michael

David Ward wrote:
Hi

RTC 2.0 Server Linux
RTC 2.0 Client Windows

Beware: first time user of the SVN importer

I have used the SVN importer to import my SVN trunk into a new RTC
component. I checked the box to create baselines for tags and
branches.

There's quite a few tags and branches in my SVN repo. Some of the
SVN tags did not get baselines created for them (OTOH some did).

In at least one case, two of the baselines appear to be incorrect.
The two relevant SVN tags represent SVN revisions 2448 and 2450.
However, the two imported baselines are labelled 2447 each.
Comparing the two baselines shows no differences (as you'd expect
since they appear to come from the same, but wrong, SVN revision).

Maybe I'm missing something, but isn't it true that two distinct
SVN tags should be imported as two distinct RTC baselines ?

Any help appreciated
Dave

permanent link
Michael Valenta (3.7k3) | answered Oct 23 '09, 9:13 a.m.
FORUM MODERATOR / JAZZ DEVELOPER
The way the import of branches and tags in intended to work is as follows:

1) Import trunk with creation of baselines enabled
2) For each tag or branch:
a) Duplicate the target workspace from step 1 and replace the
component with the baseline for the desired tag or branch
b) Perform the import again and select the component from step a as
the target
c) the importer should detect the presence of the baseline and
prompt the user to ask if the import of a tag/branch is desired
d) Say yes to the prompt and select the same folders that were
selected in step 1).2

You will then end up with a workspace for each tag or branch.

In regards to you question about source file copies, if you follow the
steps above, the answer is no.

Michael

avid Ward wrote:
Hi Michael and thanks for expanding on the reasons why SVN tags might be
difficult to import.

I guess I could explicitly import each SVN tag (rather than the trunk)
but won't I then have multiple streams (one for each tag).
Does that lead to source file copies within the RTC database ?

Cheers

Michael Valenta wrote:
David,

I've done some investigation and it does appear that there is some
anomalies in how the baselines are being placed. In the case I hit, I
am seeing two baselines for the same branch root being created. One is
in the proper place and one obviously isn't. This may be related to
the issue you are having or it may be a different issue. I am
investigation this as part of work item
https://jazz.net/jazz/resource/itemName/com.ibm.team.workitem.WorkItem/97209.


Michael

Michael Valenta wrote:
David,

A tag in subversion is really just another copy of the tree. Because
subversion only really models file trees and copies, it is difficult
to line up baselines precisely with what you refer to as a tag in
subversion (i.e. there aren't really any tags in SVN, only copies of
trees put in a folder named "tags"). I can think of 3 possible
reasons for what you are seeing:

1) The tag in subversion was not "pure". What I mean by that was that
the tag may have been created by multiple copy commands. If we cannot
determine the exact copy point, we label the baseline appropriately
(something like "incomplete" but I don't remember the exact wording
used).

2) The copy point was pure but the tag was modified after it was
created (i.e. a tag in SVN is no different then a branch). If this is
the case, you would need to follow the instructions on the wiki page
I pointed you to in order to create a new stream for the tag and
import the latest state of the tag into that stream.

3) It is possible that there is a bug in the importer. I would need
to have access to the dump file in order to determine if that was the
case.

I know that this might not help all that much. Suffice it to say that
the Subversion model is significantly different then the RTC model
which leads to confusion over how to deal with branches and tags. If
you need clarification on any of the instructions on the wiki page,
let me know.

Michael

David Ward wrote:
Hi Michael

I'm not sure what you meant when you say "using the baseline as a
statting point, you can them import the tag or branch".

The import seems to have already imported the tag and created a
baseline for it; it's just chosen the wrong place to put the baseline.

Do I need to re-import just that tag, into the existing RTC
component ??

Sorry, but I'm not getting it :-(



Michael Valenta wrote:
Dave,

It's complicated since SVN has no concept of a tag, branch or
baseline but instead only models copies. In that sense, a tag or
branch in SVN is really just another configuration that needs to be
imported. The SVN importer doesn't "import" baselines but instead
tries to determine the best place to create a baseline that will be
as close to possible to the state of the copy representing the tag
or branch. Using the baseline as a starting point, you can then
import the tag or branch from SVN to get the proper configuration
into RTC. The wiki page at
http://jazz.net/wiki/bin/view/Main/SCMImport describes how you can
import tags and branches from an SVN repository into RTC.

Hope this helps,
Michael

David Ward wrote:
Hi

RTC 2.0 Server Linux
RTC 2.0 Client Windows

Beware: first time user of the SVN importer

I have used the SVN importer to import my SVN trunk into a new RTC
component. I checked the box to create baselines for tags and
branches.

There's quite a few tags and branches in my SVN repo. Some of the
SVN tags did not get baselines created for them (OTOH some did).

In at least one case, two of the baselines appear to be
incorrect. The two relevant SVN tags represent SVN revisions 2448
and 2450. However, the two imported baselines are labelled 2447
each. Comparing the two baselines shows no differences (as you'd
expect since they appear to come from the same, but wrong, SVN
revision).

Maybe I'm missing something, but isn't it true that two distinct
SVN tags should be imported as two distinct RTC baselines ?

Any help appreciated
Dave

Your answer


Register or to post your answer.


Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.