Jump to: navigation, search

Difference between revisions of "Subversive PDE Fetch"

(New page: Category:Subversive = Requirements = * Subversive installed in your platform * SVN binaries must be available in your PATH = Usage = == SVN fetch ant task == TODO == In .map file...)
 
 
(3 intermediate revisions by 2 users not shown)
Line 3: Line 3:
 
= Requirements =
 
= Requirements =
  
* Subversive installed in your platform
+
* An Eclipse platform
 
* SVN binaries must be available in your PATH
 
* SVN binaries must be available in your PATH
 +
* Installed Subversive PDE plugins from http://download.eclipse.org/technology/subversive/0.7/pde-update-site/
  
 
= Usage =
 
= Usage =
Line 43: Line 44:
 
| 'username'
 
| 'username'
 
| 'password'
 
| 'password'
 +
| 'force' // optional flag, force operation to run
 
;
 
;
 +
</source>
 +
 +
It's also supported SourceForge's svn pde build fetcher's map file format:
 +
 +
<source lang="java">
 +
elementType '@' elementID = SVN, tag[:revision], url, preTagPath , postTagPath
 
</source>
 
</source>
  
Line 55: Line 63:
 
plugin@xxxxxxxxxxxxxxxxxxxxxxxxx=SVN,url=http://dev.eclipse.org/svnroot/technology/org.eclipse.subversive,tag=trunk,path=org.eclipse.team.svn.help
 
plugin@xxxxxxxxxxxxxxxxxxxxxxxxx=SVN,url=http://dev.eclipse.org/svnroot/technology/org.eclipse.subversive,tag=trunk,path=org.eclipse.team.svn.help
 
</source>
 
</source>
 +
 +
Example for SourceForge pde build fetcher:
 +
<source lang="xml">
 +
feature@org.eclipse.pde.build.svn=SVN,tags/v20070222,https://svn-pde-build.svn.sourceforge.net/svnroot/svn-pde-build,source,features/org.eclipse.pde.build.svn-feature
 +
plugin@org.eclipse.pde.build.svn=SVN,tags/v20070222,https://svn-pde-build.svn.sourceforge.net/svnroot/svn-pde-build,source,plugins/org.eclipse.pde.build.svn
 +
 +
</source>
 +
 +
=== Interpretation of 'tag' ===
 +
The 'tag' field is interpreted for two purposes:
 +
# compose the full path from which to check out
 +
# determine the version qualifier.
 +
 +
Generally, the full path into the svn repository will be obtained by concatenating these fields: <code>url tag path</code>.
 +
However, omitting the <code>tag</code> field will cause the segment "trunk/" to be inserted instead.
 +
 +
When PDE/Build encounters a version specified as s.t. like <code>1.2.3.v_qualifier</code> it will substitute the string "qualifier" during building. When checking out from trunk the current date will automatically be used for this qualifier.
 +
When building from a tag the last segment of the tag-path will be used. E.g., specifying <code>tag=tags/builds/I20110529</code>
 +
will cause the qualifier to be substituted with "I20110529". Yet, if the tag path starts with the segment "branches/" this path
 +
will not be used for qualifier substitution.
 +
 +
For some of the above, a SVN fetch plug-in &ge; 0.7.9.I20110419-1700 is required (see {{FixedBug|301045}}).
  
 
=== Troubleshooting ===
 
=== Troubleshooting ===
  
TODO
+
* If you have configured a SVN fetch and get a task called ''FetchFromCVS'' instead of ''FetchFromSVN'', that means that the pde svn fetch plugin is not installed in your platform

Latest revision as of 18:34, 28 May 2011


Requirements

Usage

SVN fetch ant task

TODO

In .map files

Entry description

mapEntry
: elementType '@' elementID (',' elementVersion)? = svnContent
;
elementType
: 'bundle' | 'feature' | 'plugin' | 'fragment'
;
elementID
: ... //plug-in, feature, fragment or bundle ID
;
elementVersion
: ... //plug-in, feature, fragment or bundle version
;
svnContent
: 'SVN' (',' arg)+
;
arg
: key '=' value
;
key
: 'url' // project root URL
| 'tag' // optional tag name (trunk, tags/some_name etc.)
| 'path' // optional element, path relative to project root URL
| 'revision' // optional element, revision
| 'peg' // optional element, peg revision
| 'username'
| 'password'
| 'force' // optional flag, force operation to run
;

It's also supported SourceForge's svn pde build fetcher's map file format:

elementType '@' elementID = SVN, tag[:revision], url, preTagPath , postTagPath

Examples

feature@xxxxxxxxxxxxxxxxxxxx=SVN,url=http://dev.eclipse.org/svnroot/technology/org.eclipse.subversive,tag=trunk,path=org.eclipse.team.svn-feature
plugin@xxxxxxxxxxxxxxxxxxxx=SVN,url=http://dev.eclipse.org/svnroot/technology/org.eclipse.subversive,tag=trunk,path=org.eclipse.team.svn
plugin@xxxxxxxxxxxxxxxxxxxxxxxxx=SVN,url=http://dev.eclipse.org/svnroot/technology/org.eclipse.subversive,tag=trunk,path=org.eclipse.team.svn.core
plugin@xxxxxxxxxxxxxxxxxxxxxxx=SVN,url=http://dev.eclipse.org/svnroot/technology/org.eclipse.subversive,tag=trunk,path=org.eclipse.team.svn.ui
plugin@xxxxxxxxxxxxxxxxxxxxxxxxx=SVN,url=http://dev.eclipse.org/svnroot/technology/org.eclipse.subversive,tag=trunk,path=org.eclipse.team.svn.help

Example for SourceForge pde build fetcher:

feature@org.eclipse.pde.build.svn=SVN,tags/v20070222,https://svn-pde-build.svn.sourceforge.net/svnroot/svn-pde-build,source,features/org.eclipse.pde.build.svn-feature
plugin@org.eclipse.pde.build.svn=SVN,tags/v20070222,https://svn-pde-build.svn.sourceforge.net/svnroot/svn-pde-build,source,plugins/org.eclipse.pde.build.svn

Interpretation of 'tag'

The 'tag' field is interpreted for two purposes:

  1. compose the full path from which to check out
  2. determine the version qualifier.

Generally, the full path into the svn repository will be obtained by concatenating these fields: url tag path. However, omitting the tag field will cause the segment "trunk/" to be inserted instead.

When PDE/Build encounters a version specified as s.t. like 1.2.3.v_qualifier it will substitute the string "qualifier" during building. When checking out from trunk the current date will automatically be used for this qualifier. When building from a tag the last segment of the tag-path will be used. E.g., specifying tag=tags/builds/I20110529 will cause the qualifier to be substituted with "I20110529". Yet, if the tag path starts with the segment "branches/" this path will not be used for qualifier substitution.

For some of the above, a SVN fetch plug-in ≥ 0.7.9.I20110419-1700 is required (see bug 301045).

Troubleshooting

  • If you have configured a SVN fetch and get a task called FetchFromCVS instead of FetchFromSVN, that means that the pde svn fetch plugin is not installed in your platform