Subclipse.unkrig.de: Difference between revisions

From unkrig.de
Jump to navigation Jump to search
No edit summary
mNo edit summary
 
(4 intermediate revisions by the same user not shown)
Line 1: Line 1:
= Introduction =
<meta name="keywords" content="java, eclipse, subclipse, subversion, svn, plug-in, plugin"></meta>
<meta name="description" content="An ECLIPSE plug-in that adds an ANT task that uses the SVN client that is provided by the SUBCLIPSE plug-in"></meta>
== Introduction ==


This ECLIPSE plug-in adds an additional ANT task 'de.unkrig.subclipse.svn' which is available in ANT builds which have the option 'Run in the same JRE as the workspace' set.
This ECLIPSE plug-in adds an additional ANT task 'de.unkrig.subclipse.svn' which is available in ANT builds which have the option 'Run in the same JRE as the workspace' set.
Line 5: Line 7:
The ANT task uses the SVN client that is provided by the SUBCLIPSE plug-in. Thus no configuration is required, because it is re-used from SUBCLIPSE.
The ANT task uses the SVN client that is provided by the SUBCLIPSE plug-in. Thus no configuration is required, because it is re-used from SUBCLIPSE.


= Download and Installation =
== Download and Installation ==


Within ECLIPSE, download and install the feature from the update site
Within ECLIPSE, download and install the feature from the update site
Line 13: Line 15:
The change log is available [http://subclipse.unkrig.de/changelog.txt here].
The change log is available [http://subclipse.unkrig.de/changelog.txt here].


= Task Descriptions =
== Task Documentation ==


== Task <span style="font-size:14pt"><code>'''<de.unkrig.subclipse.svn>'''</code></span> ==
: [http://subclipse.unkrig.de/antdoc/tasks/de.unkrig.subclipse.svn.html <code><de.unkrig.subclipse.svn></code>]


Executes a series of SVN commands.
== Examples ==
 
=== Attributes ===
 
(None.)
 
=== Subelements ===
 
The subelements of this task represent SVN subcommands which are executed sequentially:
 
==== <code><copy></code> ====
 
:Representation of an [http://svnbook.red-bean.com/en/1.7/svn.ref.svn.c.copy.html svn copy] subcommand.
 
:;Attributes
 
::;<code>url="''url''"</code> ''or'' <code>file="''path''"</code> ''or'' <code>dir="''path''"</code>
:::File or directory to copy (resource collection subelements are an alternative to specify multiple source files; see below).
 
::;<code>toUrl="''url''"</code> ''or'' <code>toFile="''path''"</code> ''or'' <code>toDir="''path''"</code>
:::Where to copy the file(s) (must be an existing directory iff multiple source files are specified).
 
::;<code>message="''text''"</code>
::;<code>revision="''rev''"</code>
::;<code>pegRevision="''rev''"</code>
::;<code>copyAsChild="''boolean''"</code>
::;<code>makeParents="''boolean''"</code>
:::See the SVN documentation of the [http://svnbook.red-bean.com/en/1.7/svn.ref.svn.c.copy.html svn copy] subcommand.
 
:;Subelements
 
::;Resource collections (e.g. <code><fileset></code>, <code><dirset></code>, ...)
:::An alternative to the <code>srcUrl="''url''"</code> and <code>srcPath="''path''"</code> attributes to specify ''multiple'' source files.
 
==== <code><diff></code> ====
 
:Representation of a [http://svnbook.red-bean.com/en/1.7/svn.ref.svn.c.diff.html svn diff] subcommand.
 
:;Attributes
 
::;<code>oldFile="''path''"</code> or <code>oldDir="''path''"</code>
:::To be documented.
 
::;<code>oldFileRevision="''rev''"</code>
:::To be documented.
 
::;<code>newFile="''path''"</code> or <code>newDir="''path''"</code>
:::To be documented.
 
::;<code>newFileRevision="''rev''"</code>
:::To be documented.
 
::;<code>url="''url''"</code>
:::To be documented.
 
::;<code>pegRevision="''rev''"</code>
:::To be documented.
 
::;<code>startRevision="''rev''"</code>
:::To be documented.
 
::;<code>endRevision="''rev''"</code>
:::To be documented.
 
::;<code>oldUrl="''url''"</code>
:::To be documented.
 
::;<code>oldUrlRevision="''rev''"</code>
:::To be documented.
 
::;<code>newUrl="''url''"</code>
:::To be documented.
 
::;<code>newUrlRevision="''rev''"</code>
:::To be documented.
 
::;<code>outFile="''path''"</code>
:::To be documented.
 
::;<code>recurse="true|false"</code>
:::To be documented.
 
::;<code>ignoreAncestry="true|false"</code>
:::To be documented.
 
::;<code>noDiffDeleted="true|false"</code>
:::To be documented.
 
::;<code>force="true|false"</code>
:::To be documented.
 
==== <code><diffSummarize></code> ====
 
:Representation of a [http://svnbook.red-bean.com/en/1.7/svn.ref.svn.c.diff.html svn diff --summarize] subcommand.
 
:;Attributes
 
::;<code>oldFile="''path''"</code> or <code>oldDir="''path''"</code>
:::To be documented.
 
::;<code>url="''url''"</code>
:::To be documented.
 
::;<code>pegRevision="''rev''"</code>
:::To be documented.
 
::;<code>startRevision="''rev''"</code>
:::To be documented.
 
::;<code>endRevision="''rev''"</code>
:::To be documented.
 
::;<code>oldUrl="''url''"</code>
:::To be documented.
 
::;<code>oldUrlRevision="''rev''"</code>
:::To be documented.
 
::;<code>newUrl="''url''"</code>
:::To be documented.
 
::;<code>newUrlRevision="''rev''"</code>
:::To be documented.
 
::;<code>recurse="true|false"</code>
:::To be documented.
 
::;<code>ignoreAncestry="true|false"</code>
:::To be documented.
 
:;Subelements
 
::;<code><perDiffSummary></code>
:::Contains a sequence of tasks that is executed each diff summary. The following attributes are substituted within the tasks:
 
:::;<code>@{diffKind}</code>
::::To bedocumented.
 
:::;<code>@{nodeKind}</code>
::::To bedocumented.
 
:::;<code>@{path}</code>
::::To bedocumented.
 
:::;<code>@{source}</code>
::::To bedocumented.
 
:::;<code>@{propsChanged}</code>
::::To bedocumented.
 
==== <code><export></code> ====
 
:Representation of an [http://svnbook.red-bean.com/en/1.7/svn.ref.svn.c.export.html svn export] subcommand.
 
:;Attributes
 
::;<code>url="''url''"</code> ''or'' <code>file="''path''"</code> ''or'' <code>dir="''path''"</code>
:::File or directory to export.
 
::;<code>toFile="''path''"</code> ''or'' <code>toDir="''path''"</code>
:::Where to export the file or directory to.
 
::;<code>revision="''rev''"</code>
:::See the documentation of the [http://svnbook.red-bean.com/en/1.7/svn.ref.svn.c.export.html svn export] subcommand.
 
::;<code>force="''boolean''"</code>
:::Whether to overwrite existing files.
 
==== <code><import></code> ====
 
:Representation of an [http://svnbook.red-bean.com/en/1.7/svn.ref.svn.c.import.html svn import] subcommand.
 
:;Attributes
 
::;<code>file="''path''"</code> ''or'' <code>dir="''path''"</code>
:::File or directory to import.
 
::;<code>url="''url''"</code>
:::Destination repository location.
 
::;<code>message="''text''"</code>
::;<code>recurse="''boolean''"</code>
:::See the documentation of the [http://svnbook.red-bean.com/en/1.7/svn.ref.svn.c.import.html svn import] subcommand.
 
==== <code><list></code> ====
 
:Representation of an [http://svnbook.red-bean.com/en/1.8/svn.ref.svn.c.list.html svn list] subcommand.
 
:;Attributes
 
::;<code>url="''url''"</code> ''or'' <code>file="''file''"</code> ''or'' <code>dir="''dir''"</code>
:::The URL or working copy file or working copy directory to list.
 
::;<code>revision="''revision''|<u>HEAD</u>"</code>, <code>pegRevision="''revision''|<u>HEAD</u>"</code>
:::The revision of the URL or file or directory to list.
 
::;<code>recurse="true|<u>false</u>"</code>
:::Whether to continue when some of the <code><perDirEntry></code> sequences fail.
 
::;<code>attributeNamePrefix="''string''"</code>
:::See <code><perDirEntry></code>, below.
 
::;<code>keepGoing="true|<u>false</u>"</code>
:::Whether to descend recursively.
 
:;Subelements
 
::;<code><perDirEntry></code>
:::Contains a sequence of tasks that is executed for listed entry. The following attributes are substituted within the tasks:
:::;<code>@{hasProps}</code>
::::Whether the entry has SVN properties
:::;<code>@{lastChangeDate}</code>
::::When the entry was last changed
:::;<code>@{lastChangedRevision}</code>
::::The last committed revision
:::;<code>@{lastCommitAuthor}</code>
::::The user who committed this entry last
:::;<code>@{nodeKind}</code>
::::The node's kind ("<code>file</code>" or "<code>directory</code>")
:::;<code>@{path}</code>
::::The (relative) path of the entry
:::;<code>@{size}</code>
::::The file size in bytes
:::If <code>attributeNamePrefix="''string''"</code> is configured, then the described attribute names are prefixed with the given string. This is particularly useful for ''nested'' <code><list></code> commands.
 
:::See the documentation of the [http://svnbook.red-bean.com/en/1.8/svn.ref.svn.c.list.html svn list] subcommand.
 
==== <code><log></code> ====
 
:(To be documented)
 
==== <code><mkdir></code> ====
 
:Representation of an [http://svnbook.red-bean.com/en/1.7/svn.ref.svn.c.mkdir.html svn mkdir] subcommand.
 
:;Attributes
 
::;<code>url="''url''"</code>
::;<code>message="''text''"</code>
::;<code>makeParents="''boolean''"</code>
:::See the documentation of the [http://svnbook.red-bean.com/en/1.7/svn.ref.svn.c.mkdir.html svn mkdir] subcommand.
 
==== Other SVN subcommands ====
 
<code>
:;<addDirectory>
:;<addFile>
:;<addKeywords>
:;<annotate>
:;<checkout>
:;<commit>
:;<createPatch>
:;<createRepository>
:;<getProperties>
:;<getRevProperties>
:;<lock>
:;<merge>
:;<move>
:;<relocate>
:;<remove>
:;<revert>
:;<unlock>
:;<update>
</code>
 
::These subelements exist, but merely issue an "Not yet implemented" error when executed.
 
= Example =


Tagging projects in SVN:
Tagging projects in SVN:
Line 325: Line 60:
, where "<code>unkrig</code>" is the (arbitrary) XML namespace prefix.
, where "<code>unkrig</code>" is the (arbitrary) XML namespace prefix.


= License =
== License ==


SUBCLIPSE.UNKRIG.DE is published under the "[[New BSD License]]".
SUBCLIPSE.UNKRIG.DE is published under the "[[New BSD License]]".


= Source Code =
== Source Code ==


Source code is available via SVN on
Source code is available via SVN on
Line 345: Line 80:
, or, if you are using ECLIPSE, just import https://svn.code.sf.net/p/loggifier/code/trunk/de.unkrig.subclipse_dist/projectSet.psf.
, or, if you are using ECLIPSE, just import https://svn.code.sf.net/p/loggifier/code/trunk/de.unkrig.subclipse_dist/projectSet.psf.


= Contact =
== Contact ==


For bugs, improvements, complaints, or any other kind of feedback, send email to [mailto:arno@subclipse.unkrig.de arno@subclipse.unkrig.de].
For bugs, improvements, complaints, or any other kind of feedback, send email to [mailto:arno@subclipse.unkrig.de arno@subclipse.unkrig.de].

Latest revision as of 19:19, 21 January 2016

<meta name="keywords" content="java, eclipse, subclipse, subversion, svn, plug-in, plugin"></meta> <meta name="description" content="An ECLIPSE plug-in that adds an ANT task that uses the SVN client that is provided by the SUBCLIPSE plug-in"></meta>

Introduction[edit]

This ECLIPSE plug-in adds an additional ANT task 'de.unkrig.subclipse.svn' which is available in ANT builds which have the option 'Run in the same JRE as the workspace' set.

The ANT task uses the SVN client that is provided by the SUBCLIPSE plug-in. Thus no configuration is required, because it is re-used from SUBCLIPSE.

Download and Installation[edit]

Within ECLIPSE, download and install the feature from the update site

http://subclipse.unkrig.de/update

The change log is available here.

Task Documentation[edit]

<de.unkrig.subclipse.svn>

Examples[edit]

Tagging projects in SVN:

<!-- Verify that ANT is running in the same JVM as ECLIPSE. -->
<fail
    unless="eclipse.running"
    message="Please activate the ECLIPSE external tool configuration option 'Run in the same JRE as the workspace' and re-run."
/>

<!-- Verify that the 'de.unkrig.subclipse' plugin is available. -->
<fail message="Please install the 'de.unkrig.subclipse' ECLIPSE feature and re-run.">
    <condition><not><typefound name="de.unkrig.subclipse.svn" /></not></condition>
</fail>

<property name="d" value="http://svn.acme.com/svn/MyRepo/tags/${tag}"/>
<de.unkrig.subclipse.svn>
    <mkdir                          url="${d}"/>
    <copy srcpath="."           desturl="${d}"/>
    <copy srcpath="../project2" desturl="${d}"/>
</de.unkrig.subclipse.svn>

If you like loading ANT tasks in separate XML namespaces, you can alternatively write:

<some-enclosing-tag-e-g-project-or-target xmlns:unkrig="antlib:de.unkrig.subclipse">
    ...
    <fail
        unless="eclipse.running"
        message="Please activate the ECLIPSE external tool configuration option 'Run in the same JRE as the workspace' and re-run."
    />

    <fail message="Please install the 'de.unkrig.subclipse' ECLIPSE feature and re-run.">
        <condition><not><typefound uri="antlib:de.unkrig.subclipse" name="svn" /></not></condition>
    </fail>

    <unkrig:svn>...

, where "unkrig" is the (arbitrary) XML namespace prefix.

License[edit]

SUBCLIPSE.UNKRIG.DE is published under the "New BSD License".

Source Code[edit]

Source code is available via SVN on

https://svn.code.sf.net/p/loggifier/code

. From that repository, check out the projects

  • de.unkrig.checkstyle-configuration
  • de.unkrig.commons.nullanalysis
  • de.unkrig.subclipse_dist
  • de.unkrig.subclipse.ant.tasks
  • de.unkrig.subclipse.branding
  • de.unkrig.subclipse.core
  • org.apache.ant-1.8.4

, or, if you are using ECLIPSE, just import https://svn.code.sf.net/p/loggifier/code/trunk/de.unkrig.subclipse_dist/projectSet.psf.

Contact[edit]

For bugs, improvements, complaints, or any other kind of feedback, send email to arno@subclipse.unkrig.de.