You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

vss.html 24 KiB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775
  1. <!DOCTYPE html>
  2. <!--
  3. Licensed to the Apache Software Foundation (ASF) under one or more
  4. contributor license agreements. See the NOTICE file distributed with
  5. this work for additional information regarding copyright ownership.
  6. The ASF licenses this file to You under the Apache License, Version 2.0
  7. (the "License"); you may not use this file except in compliance with
  8. the License. You may obtain a copy of the License at
  9. https://www.apache.org/licenses/LICENSE-2.0
  10. Unless required by applicable law or agreed to in writing, software
  11. distributed under the License is distributed on an "AS IS" BASIS,
  12. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  13. See the License for the specific language governing permissions and
  14. limitations under the License.
  15. -->
  16. <html lang="en">
  17. <head>
  18. <link rel="stylesheet" type="text/css" href="../stylesheets/style.css">
  19. <title>Microsoft Visual SourceSafe (VSS) Tasks</title>
  20. </head>
  21. <body>
  22. <h1>Microsoft Visual SourceSafe Tasks User Manual</h1>
  23. <p>by</p>
  24. <ul>
  25. <li>Craig Cottingham</li>
  26. <li>Andrew Everitt</li>
  27. <li>Balazs Fejes 2</li>
  28. <li><a href="mailto:Glenn_Twiggs@bmc.com">Glenn_Twiggs@bmc.com</a></li>
  29. <li>Martin Poeschl (<a href="mailto:mpoeschl@marmot.at">mpoeschl@marmot.at</a>)</li>
  30. <li>Phillip Wells</li>
  31. <li>Jon Skeet (<a href="mailto:jon.skeet@peramon.com">jon.skeet@peramon.com</a>)</li>
  32. <li>Nigel Magnay (<a href="mailto:nigel.magnay@parsec.co.uk">nigel.magnay@parsec.co.uk</a>)</li>
  33. <li>Gary S. Weaver</li>
  34. <li>Jesse Stockall</li>
  35. </ul>
  36. <hr/>
  37. <h2>Contents</h2>
  38. <ul>
  39. <li><a href="#intro">Introduction</a></li>
  40. <li><a href="#tasks">The Tasks</a></li>
  41. </ul>
  42. <br/>
  43. <h2 id="intro">Introduction</h2>
  44. <p>These tasks provide an interface to
  45. the <a href="https://msdn.microsoft.com/en-us/library/3h0544kx(v=vs.80).aspx"
  46. target="_top">Microsoft Visual SourceSafe</a> SCM.
  47. The <code class="code">org.apache.tools.ant.taskdefs.optional.vss</code> package consists of a
  48. simple framework to support VSS functionality as well as some Apache Ant tasks encapsulating
  49. frequently used VSS commands. Although it is possible to use these commands on the desktop, they
  50. were primarily intended to be used by automated build systems.</p>
  51. <p>If you get a <code class="output">CreateProcess error=2</code> when running these, it means
  52. that <kbd>ss.exe</kbd> was not found. Check to see if you can run it from the command line&mdash;you
  53. may need to alter your path, or set the <var>ssdir</var> property.</p>
  54. <h2 id="tasks">The Tasks</h2>
  55. <table>
  56. <tr><th scope="col">Task</th><th scope="col">Description</th></tr>
  57. <tr>
  58. <td><a href="#vssget">vssget</a></td>
  59. <td>Retrieves a copy of the specified VSS file(s).</td>
  60. </tr>
  61. <tr>
  62. <td><a href="#vsslabel">vsslabel</a></td>
  63. <td>Assigns a label to the specified version or current version of a file or project.</td>
  64. </tr>
  65. <tr>
  66. <td><a href="#vsshistory">vsshistory</a></td>
  67. <td>Shows the history of a file or project in VSS.</td>
  68. </tr>
  69. <tr>
  70. <td><a href="#vsscheckin">vsscheckin</a></td>
  71. <td>Updates VSS with changes made to a checked out file, and unlocks the VSS master copy.</td>
  72. </tr>
  73. <tr>
  74. <td><a href="#vsscheckout">vsscheckout</a></td>
  75. <td>Copies a file from the current project to the current folder, for the purpose of editing.</td>
  76. </tr>
  77. <tr>
  78. <td><a href="#vssadd">vssadd</a></td>
  79. <td>Adds a new file into the VSS Archive</td>
  80. </tr>
  81. <tr>
  82. <td><a href="#vsscp">vsscp</a></td>
  83. <td>Change the current project being used in VSS</td>
  84. </tr>
  85. <tr>
  86. <td><a href="#vsscreate">vsscreate</a></td>
  87. <td>Creates a project in VSS.</td>
  88. </tr>
  89. </table>
  90. <hr/>
  91. <h2>Task Descriptions</h2>
  92. <!-- VSSGET -->
  93. <h2 id="vssget">VssGet</h2>
  94. <h3>Description</h3>
  95. <p>Task to perform GET commands to Microsoft Visual SourceSafe.</p>
  96. <p>If you specify two or more attributes from version, date and label only one will be used in the
  97. order version, date, label.</p>
  98. <h3>Parameters</h3>
  99. <table class="attr">
  100. <tr>
  101. <th scope="col">Attribute</th>
  102. <th scope="col">Values</th>
  103. <th scope="col">Required</th>
  104. </tr>
  105. <tr>
  106. <td>vsspath</td>
  107. <td>SourceSafe path which specifies the project/file(s) you wish to perform the action on.</td>
  108. <td>Yes</td>
  109. </tr>
  110. <tr>
  111. <td>login</td>
  112. <td><q>username[,password]</q>&mdash;The username and password needed to get access to VSS. Note
  113. that you may need to specify both (if you have a password)&mdash;Ant/VSS will hang if you
  114. leave the password out and VSS does not accept login without a password.</td>
  115. <td>No</td>
  116. </tr>
  117. <tr>
  118. <td>localpath</td>
  119. <td>Override the working directory and get to the specified path</td>
  120. <td>No</td>
  121. </tr>
  122. <tr>
  123. <td>ssdir</td>
  124. <td>directory where <kbd>ss.exe</kbd> resides.</td>
  125. <td>No; by default expected to be in <code>PATH</code></td>
  126. </tr>
  127. <tr>
  128. <td>serverPath</td>
  129. <td>directory where <samp>srcsafe.ini</samp> resides.</td>
  130. <td>No</td>
  131. </tr>
  132. <tr>
  133. <td>writable</td>
  134. <td><q>true|false</q></td>
  135. <td>No; default <q>false</q></td>
  136. </tr>
  137. <tr>
  138. <td>recursive</td>
  139. <td><q>true|false</q>. Note however that in the SourceSafe UI there is a setting accessed
  140. via <q>Tools/Options/GeneralTab</q> called <q>Act on projects recursively</q>. If this
  141. setting is checked, then the <var>recursive</var> attribute is effectively ignored, and get
  142. will always be done recursively</td>
  143. <td>No; default <q>false</q></td>
  144. </tr>
  145. <tr>
  146. <td>version</td>
  147. <td>a version number to get</td>
  148. <td rowspan="3">No; only one of these may be used</td>
  149. </tr>
  150. <tr>
  151. <td>date</td>
  152. <td class="left">a date stamp to get at</td>
  153. </tr>
  154. <tr>
  155. <td>label</td>
  156. <td class="left">a label to get for</td>
  157. </tr>
  158. <tr>
  159. <td>quiet</td>
  160. <td>suppress output</td>
  161. <td>No; defaults to <q>off</q></td>
  162. </tr>
  163. <tr>
  164. <td>autoresponse</td>
  165. <td>What to respond with (sets the <kbd>-I</kbd> option). By default, <kbd>-I-</kbd> is
  166. used; values of <q>Y</q> or <q>N</q> will be appended to this.</td>
  167. <td>No</td>
  168. </tr>
  169. <tr>
  170. <td>writablefiles</td>
  171. <td>Behavior when local files are writable. Valid options are: <q>replace</q>, <q>skip</q>
  172. and <q>fail</q>; <q>skip</q> implies <var>failonerror</var>=<q>false</q></td>
  173. <td>No; defaults to <q>fail</q></td>
  174. </tr>
  175. <tr>
  176. <td>failonerror</td>
  177. <td>Stop the build process if <kbd>ss.exe</kbd> exits with a return code <q>100</q></td>
  178. <td>No; defaults to <q>true</q></td>
  179. </tr>
  180. <tr>
  181. <td>filetimestamp</td>
  182. <td>Set the behavior for timestamps of local files. Valid options
  183. are <q>current</q>, <q>modified</q>, or <q>updated</q>.</td>
  184. <td>No; defaults to <q>current</q></td>
  185. </tr>
  186. </table>
  187. <p>Note that only one of version, date or label should be specified</p>
  188. <h3>Examples</h3>
  189. <p>Perform a get on the VSS Project <samp>$/source/myproject</samp> using the username <q>me</q> and
  190. the password <q>mypassword</q>. That will recursively get the files which are
  191. labeled <q>Release1</q> and write them to the local directory <samp>C:\mysrc\myproject</samp>. The
  192. local files will be writable.</p>
  193. <pre>
  194. &lt;vssget localPath=&quot;C:\mysrc\myproject&quot;
  195. recursive=&quot;true&quot;
  196. label=&quot;Release1&quot;
  197. login=&quot;me,mypassword&quot;
  198. vsspath=&quot;$/source/aProject&quot;
  199. writable=&quot;true&quot;/&gt;</pre>
  200. <hr/>
  201. <!-- VSSLABEL -->
  202. <h2 id="vsslabel">VssLabel</h2>
  203. <h3>Description</h3>
  204. <p>Task to perform LABEL commands to Microsoft Visual SourceSafe.</p>
  205. <p>Assigns a label to the specified version or current version of a file or project.</p>
  206. <h3>Parameters</h3>
  207. <table class="attr">
  208. <tr>
  209. <th scope="col">Attribute</th>
  210. <th scope="col">Values</th>
  211. <th scope="col">Required</th>
  212. </tr>
  213. <tr>
  214. <td>vsspath</td>
  215. <td>SourceSafe path which specifies the project/file(s) you wish to perform the action on.</td>
  216. <td>Yes</td>
  217. </tr>
  218. <tr>
  219. <td>login</td>
  220. <td><q>username[,password]</q>&mdash;The username and password needed to get access to VSS. Note
  221. that you may need to specify both (if you have a password)&mdash;Ant/VSS will hang if you
  222. leave the password out and VSS does not accept login without a password.</td>
  223. <td>No</td>
  224. </tr>
  225. <tr>
  226. <td>ssdir</td>
  227. <td>directory where <kbd>ss.exe</kbd> resides.</td>
  228. <td>No; by default expected to be in <code>PATH</code></td>
  229. </tr>
  230. <tr>
  231. <td>serverPath</td>
  232. <td>directory where <samp>srcsafe.ini</samp> resides.</td>
  233. <td>No</td>
  234. </tr>
  235. <tr>
  236. <td>label</td>
  237. <td>A label to apply to the hierarchy</td>
  238. <td>Yes</td>
  239. </tr>
  240. <tr>
  241. <td>version</td>
  242. <td>An existing file or project version to label. By default the current version is
  243. labeled.</td>
  244. <td>No</td>
  245. </tr>
  246. <tr>
  247. <td>comment</td>
  248. <td>The comment to use for this label. Empty or <q>-</q> for no comment.</td>
  249. <td>No</td>
  250. </tr>
  251. <tr>
  252. <td>autoresponse</td>
  253. <td>What to respond with (sets the <kbd>-I</kbd> option). By default, <kbd>-I-</kbd> is
  254. used; values of <q>Y</q> or <q>N</q> will be appended to this.</td>
  255. <td>No</td>
  256. </tr>
  257. <tr>
  258. <td>failonerror</td>
  259. <td>Stop the build process if <kbd>ss.exe</kbd> exits with a return code <q>100</q>.</td>
  260. <td>No; defaults to <q>true</q></td>
  261. </tr>
  262. </table>
  263. <h3>Examples</h3>
  264. <p>Label the current version of the VSS project <samp>$/source/aProject</samp> with the
  265. label <q>Release1</q> using the username <q>me</q> and the password <q>mypassword</q>.</p>
  266. <pre>
  267. &lt;vsslabel vsspath=&quot;$/source/aProject&quot;
  268. login=&quot;me,mypassword&quot;
  269. label=&quot;Release1&quot;/&gt;</pre>
  270. <p>Label version 4 of the VSS file <samp>$/source/aProject/myfile.txt</samp> with the
  271. label <q>1.03.004</q>. If this version already has a label, the operation (and the build) will
  272. fail.</p>
  273. <pre>
  274. &lt;vsslabel vsspath=&quot;$/source/aProject/myfile.txt&quot;
  275. version=&quot;4&quot;
  276. label=&quot;1.03.004&quot;/&gt;</pre>
  277. <hr/>
  278. <!-- VSSHISTORY -->
  279. <h2 id="vsshistory">VssHistory</h2>
  280. <h3>Description</h3>
  281. Task to perform HISTORY commands to Microsoft Visual SourceSafe.
  282. <h3>Parameters</h3>
  283. <table class="attr">
  284. <tr>
  285. <th scope="col">Attribute</th>
  286. <th scope="col">Values</th>
  287. <th scope="col">Required</th>
  288. </tr>
  289. <tr>
  290. <td>vsspath</td>
  291. <td>SourceSafe path which specifies the project/file(s) you wish to perform the action on.</td>
  292. <td>Yes</td>
  293. </tr>
  294. <tr>
  295. <td>login</td>
  296. <td><q>username[,password]</q>&mdash;The username and password needed to get access to VSS. Note
  297. that you may need to specify both (if you have a password)&mdash;Ant/VSS will hang if you
  298. leave the password out and VSS does not accept login without a password.</td>
  299. <td>No</td>
  300. </tr>
  301. <tr>
  302. <td>ssdir</td>
  303. <td>directory where <kbd>ss.exe</kbd> resides.</td>
  304. <td>No; by default expected to be in <code>PATH</code></td>
  305. </tr>
  306. <tr>
  307. <td>serverPath</td>
  308. <td>directory where <samp>srcsafe.ini</samp> resides.</td>
  309. <td>No</td>
  310. </tr>
  311. <tr>
  312. <td>fromDate</td>
  313. <td>Start date for comparison</td>
  314. <td>See below</td>
  315. </tr>
  316. <tr>
  317. <td>toDate</td>
  318. <td>End date for comparison</td>
  319. <td>See below</td>
  320. </tr>
  321. <tr>
  322. <td>dateFormat</td>
  323. <td>Format of dates in <var>fromDate</var> and <var>toDate</var>. Used when calculating dates
  324. with the <var>numdays</var> attribute. This string uses the formatting rules of
  325. SimpleDateFormat.</td>
  326. <td>No; defaults to <code>DateFormat.SHORT</code></td>
  327. </tr>
  328. <tr>
  329. <td>fromLabel</td>
  330. <td>Start label for comparison</td>
  331. <td>No</td>
  332. </tr>
  333. <tr>
  334. <td>toLabel</td>
  335. <td>Start label for comparison</td>
  336. <td>No</td>
  337. </tr>
  338. <tr>
  339. <td>numdays</td>
  340. <td>The number of days for comparison.</td>
  341. <td>See below</td>
  342. </tr>
  343. <tr>
  344. <td>output</td>
  345. <td>File to write the diff.</td>
  346. <td>No</td>
  347. </tr>
  348. <tr>
  349. <td>recursive</td>
  350. <td><q>true|false</q></td>
  351. <td>No</td>
  352. </tr>
  353. <tr>
  354. <td>style</td>
  355. <td><q>brief</q>, <q>codediff</q>, <q>default</q> or <q>nofile</q>.</td>
  356. <td>No; defaults to <q>default</q></td>
  357. </tr>
  358. <tr>
  359. <td>user</td>
  360. <td>Name the user whose changes we would like to see</td>
  361. <td>No</td>
  362. </tr>
  363. <tr>
  364. <td>failonerror</td>
  365. <td>Stop the build process if <kbd>ss.exe</kbd> exits with a return code <q>100</q></td>
  366. <td>No; defaults to <q>true</q></td>
  367. </tr>
  368. </table>
  369. <h4>Specifying the time-frame</h4>
  370. <p>There are different ways to specify what time-frame you wish to evaluate:</p>
  371. <ul>
  372. <li>Changes between two dates: Specify both <var>fromDate</var> and <var>toDate</var></li>
  373. <li>Changes before a date: Specify <var>toDate</var></li>
  374. <li>Changes after a date: Specify <var>fromDate</var></li>
  375. <li>Changes X Days before a date: Specify <var>toDate</var> and (negative!) <var>numDays</var></li>
  376. <li>Changes X Days after a date: Specify <var>fromDate</var> and <var>numDays</var></li>
  377. </ul>
  378. <h3>Examples</h3>
  379. <p>Show all changes between <q>Release1</q> and <q>Release2</q>.</p>
  380. <pre>
  381. &lt;vsshistory vsspath=&quot;$/myProject&quot; recursive=&quot;true&quot;
  382. fromLabel=&quot;Release1&quot;
  383. toLabel=&quot;Release2&quot;/&gt;</pre>
  384. <p>Show all changes between January 1st 2001 and March 31st 2001 (in Germany, date must be specified
  385. according to your locale).</p>
  386. <pre>
  387. &lt;vsshistory vsspath=&quot;$/myProject&quot; recursive=&quot;true&quot;
  388. fromDate=&quot;01.01.2001&quot;
  389. toDate=&quot;31.03.2001&quot;/&gt;</pre>
  390. <p>Shows all changes in the last fortnight.</p>
  391. <pre>
  392. &lt;tstamp&gt;
  393. &lt;format property=&quot;to.tstamp&quot; pattern=&quot;M-d-yy;h:mma&quot;/&gt;
  394. &lt;/tstamp&gt;
  395. &lt;vsshistory vsspath=&quot;$/myProject&quot; recursive=&quot;true&quot;
  396. numDays=&quot;-14&quot;
  397. dateFormat=&quot;M-d-yy;h:mma&quot;
  398. toDate=&quot;${to.tstamp}&quot;/&gt;</pre>
  399. <hr/>
  400. <!-- VSSCHECKIN -->
  401. <h2 id="vsscheckin">VssCheckin</h2>
  402. <h3>Description</h3>
  403. <p>Task to perform CHECKIN commands to Microsoft Visual SourceSafe.</p>
  404. <h3>Parameters</h3>
  405. <table class="attr">
  406. <tr>
  407. <th scope="col">Attribute</th>
  408. <th scope="col">Values</th>
  409. <th scope="col">Required</th>
  410. </tr>
  411. <tr>
  412. <td>vsspath</td>
  413. <td>SourceSafe path which specifies the project/file(s) you wish to perform the action on.</td>
  414. <td>Yes</td>
  415. </tr>
  416. <tr>
  417. <td>login</td>
  418. <td><q>username[,password]</q>&mdash;The username and password needed to get access to
  419. VSS. Note that you may need to specify both (if you have a password)&mdash;Ant/VSS will hang
  420. if you leave the password out and VSS does not accept login without a password.</td>
  421. <td>No</td>
  422. </tr>
  423. <tr>
  424. <td>localpath</td>
  425. <td>Override the working directory and get to the specified path</td>
  426. <td>No</td>
  427. </tr>
  428. <tr>
  429. <td>ssdir</td>
  430. <td>directory where <kbd>ss.exe</kbd> resides.</td>
  431. <td>No; by default expected to be in <code>PATH</code></td>
  432. </tr>
  433. <tr>
  434. <td>serverPath</td>
  435. <td>directory where <samp>srcsafe.ini</samp> resides.</td>
  436. <td>No</td>
  437. </tr>
  438. <tr>
  439. <td>writable</td>
  440. <td><q>true|false</q></td>
  441. <td>No</td>
  442. </tr>
  443. <tr>
  444. <td>recursive</td>
  445. <td><q>true|false</q></td>
  446. <td>No</td>
  447. </tr>
  448. <tr>
  449. <td>comment</td>
  450. <td>Comment to use for the files that where checked in.</td>
  451. <td>No</td>
  452. </tr>
  453. <tr>
  454. <td>autoresponse</td>
  455. <td><q>Y</q>, <q>N</q> or empty. Specify how to reply to questions from VSS.</td>
  456. <td>No</td>
  457. </tr>
  458. <tr>
  459. <td>failonerror</td>
  460. <td>Stop the build process if <kbd>ss.exe</kbd> exits with a return code <q>100</q>.</td>
  461. <td>No; defaults to <q>true</q></td>
  462. </tr>
  463. </table>
  464. <h3>Examples</h3>
  465. <p>Check in the file(s) named <samp>test*</samp> in the project <samp>$/test</samp> using the local
  466. directory <samp>D:\build</samp>.</p>
  467. <pre>
  468. &lt;vsscheckin vsspath=&quot;$/test/test*&quot;
  469. localpath=&quot;D:\build\&quot;
  470. comment=&quot;Modified by automatic build&quot;/&gt;
  471. </pre>
  472. <hr/>
  473. <!-- VSSCHECKOUT -->
  474. <h2 id="vsscheckout">VssCheckout</h2>
  475. <h3>Description</h3>
  476. <p>Task to perform CHECKOUT commands to Microsoft Visual SourceSafe.</p>
  477. <p>If you specify two or more attributes from <var>version</var>, <var>date</var>
  478. and <var>label</var> only one will be used in the
  479. order <var>version</var>, <var>date</var>, <var>label</var>.</p>
  480. <h3>Parameters</h3>
  481. <table class="attr">
  482. <tr>
  483. <th scope="col">Attribute</th>
  484. <th scope="col">Values</th>
  485. <th scope="col">Required</th>
  486. </tr>
  487. <tr>
  488. <td>vsspath</td>
  489. <td>SourceSafe path which specifies the project/file(s) you wish to perform the action on.</td>
  490. <td>Yes</td>
  491. </tr>
  492. <tr>
  493. <td>login</td>
  494. <td><q>username[,password]</q>&mdash;The username and password needed to get access to VSS. Note
  495. that you may need to specify both (if you have a password)&mdash;Ant/VSS will hang if you
  496. leave the password out and VSS does not accept login without a password.</td>
  497. <td>No</td>
  498. </tr>
  499. <tr>
  500. <td>localpath</td>
  501. <td>Override the working directory and get to the specified path</td>
  502. <td>No</td>
  503. </tr>
  504. <tr>
  505. <td>ssdir</td>
  506. <td>directory where <kbd>ss.exe</kbd> resides.</td>
  507. <td>No; by default expected to be in <code>PATH</code></td>
  508. </tr>
  509. <tr>
  510. <td>serverPath</td>
  511. <td>directory where <samp>srcsafe.ini</samp> resides.</td>
  512. <td>No</td>
  513. </tr>
  514. <tr>
  515. <td>writable</td>
  516. <td><q>true|false</q></td>
  517. <td>No</td>
  518. </tr>
  519. <tr>
  520. <td>recursive</td>
  521. <td><q>true|false</q></td>
  522. <td>No</td>
  523. </tr>
  524. <tr>
  525. <td>version</td>
  526. <td>a version number to get</td>
  527. <td rowspan="3">No; only one of these may be used</td>
  528. </tr>
  529. <tr>
  530. <td>date</td>
  531. <td class="left">a date stamp to get at</td>
  532. </tr>
  533. <tr>
  534. <td>label</td>
  535. <td class="left">a label to get for</td>
  536. </tr>
  537. <tr>
  538. <td>writablefiles</td>
  539. <td>Behavior when local files are writable. Valid options are: <q>replace</q>, <q>skip</q>
  540. and <q>fail</q>; <q>skip</q> implies <var>failonerror</var>=<q>false</q></td>
  541. <td>No; defaults to <q>fail</q></td>
  542. </tr>
  543. <tr>
  544. <td>failonerror</td>
  545. <td>Stop the build process if <kbd>ss.exe</kbd> exits with a return code <q>100</q>.</td>
  546. <td>No; defaults to <q>true</q></td>
  547. </tr>
  548. <tr>
  549. <td>filetimestamp</td>
  550. <td>Set the behavior for timestamps of local files. Valid options
  551. are <q>current</q>, <q>modified</q>, or <q>updated</q>.</td>
  552. <td>No; defaults to <q>current</q></td>
  553. </tr>
  554. <tr>
  555. <td>getlocalcopy</td>
  556. <td>Set the behavior to retrieve local copies of the files.</td>
  557. <td>No; defaults to <q>true</q></td>
  558. </tr>
  559. </table>
  560. <h3>Examples</h3>
  561. <p>Check out the project <samp>$/test</samp> recursively to the directory <samp>D:\build</samp>.</p>
  562. <pre>
  563. &lt;vsscheckout vsspath=&quot;$/test&quot;
  564. localpath=&quot;D:\build&quot;
  565. recursive=&quot;true&quot;
  566. login=&quot;me,mypass&quot;/&gt;</pre>
  567. <hr/>
  568. <!-- VSSADD -->
  569. <h2 id="vssadd">VssAdd</h2>
  570. <h3>Description</h3>
  571. Task to perform ADD commands to Microsoft Visual SourceSafe.
  572. <h3>Parameters</h3>
  573. <table class="attr">
  574. <tr>
  575. <th scope="col">Attribute</th>
  576. <th scope="col">Values</th>
  577. <th scope="col">Required</th>
  578. </tr>
  579. <tr>
  580. <td>localpath</td>
  581. <td>Specify the local file(s) to add to VSS</td>
  582. <td>Yes</td>
  583. </tr>
  584. <tr>
  585. <td>login</td>
  586. <td><q>username[,password]</q>&mdash;The username and password needed to get access to VSS. Note
  587. that you may need to specify both (if you have a password)&mdash;Ant/VSS will hang if you
  588. leave the password out and VSS does not accept login without a password.</td>
  589. <td>No</td>
  590. </tr>
  591. <tr>
  592. <td>ssdir</td>
  593. <td>directory where <kbd>ss.exe</kbd> resides.</td>
  594. <td>No; by default expected to be in <code>PATH</code></td>
  595. </tr>
  596. <tr>
  597. <td>serverPath</td>
  598. <td>directory where <samp>srcsafe.ini</samp> resides.</td>
  599. <td>No</td>
  600. </tr>
  601. <tr>
  602. <td>writable</td>
  603. <td><q>true|false</q></td>
  604. <td>No</td>
  605. </tr>
  606. <tr>
  607. <td>recursive</td>
  608. <td><q>true|false</q></td>
  609. <td>No</td>
  610. </tr>
  611. <tr>
  612. <td>comment</td>
  613. <td>Comment to use for the files that where checked in.</td>
  614. <td>No</td>
  615. </tr>
  616. <tr>
  617. <td>autoresponse</td>
  618. <td><q>Y</q>, <q>N</q> or empty. Specify how to reply to questions from VSS.</td>
  619. <td>No</td>
  620. </tr>
  621. <tr>
  622. <td>failonerror</td>
  623. <td>Stop the build process if <kbd>ss.exe</kbd> exits with a return code <q>100</q>.</td>
  624. <td>No; defaults to <q>true</q></td>
  625. </tr>
  626. </table>
  627. <h3>Examples</h3>
  628. <p>Add the file named <samp>build.00012.zip</samp> into the project current working directory
  629. (see <code>vsscp</code>).</p>
  630. <pre>
  631. &lt;vssadd localpath=&quot;D:\build\build.00012.zip&quot;
  632. comment=&quot;Added by automatic build&quot;/&gt;</pre>
  633. <hr/>
  634. <!-- VSSCP -->
  635. <h2 id="vsscp">VssCp</h2>
  636. <h3>Description</h3>
  637. <p>Task to perform CP (Change Project) commands to Microsoft Visual SourceSafe.</p>
  638. <p>This task is typically used before a <code>VssAdd</code> in order to set the target project</p>
  639. <h3>Parameters</h3>
  640. <table class="attr">
  641. <tr>
  642. <th scope="col">Attribute</th>
  643. <th scope="col">Values</th>
  644. <th scope="col">Required</th>
  645. </tr>
  646. <tr>
  647. <td>vsspath</td>
  648. <td>SourceSafe path which specifies the project you wish to make the current project.</td>
  649. <td>Yes</td>
  650. </tr>
  651. <tr>
  652. <td>login</td>
  653. <td><q>username[,password]</q>&mdash;The username and password needed to get access to VSS. Note
  654. that you may need to specify both (if you have a password)&mdash;Ant/VSS will hang if you
  655. leave the password out and VSS does not accept login without a password.</td>
  656. <td>No</td>
  657. </tr>
  658. <tr>
  659. <td>ssdir</td>
  660. <td>directory where <kbd>ss.exe</kbd> resides.</td>
  661. <td>No; by default expected to be in <code>PATH</code></td>
  662. </tr>
  663. <tr>
  664. <td>serverPath</td>
  665. <td>directory where <samp>srcsafe.ini</samp> resides.</td>
  666. <td>No</td>
  667. </tr>
  668. <tr>
  669. <td>failonerror</td>
  670. <td>Stop the build process if <kbd>ss.exe</kbd> exits with a return code <q>100</q>.</td>
  671. <td>No; defaults to <q>true</q></td>
  672. </tr>
  673. </table>
  674. <h3>Examples</h3>
  675. <p>Set the current VSS project to <samp>$/Projects/ant</samp>.</p>
  676. <pre>&lt;vsscp vsspath=&quot;$/Projects/ant&quot;/&gt;</pre>
  677. <hr/>
  678. <!-- VSSCREATE -->
  679. <h2 id="vsscreate">VssCreate</h2>
  680. <h3>Description</h3>
  681. <p>Task to perform CREATE commands to Microsoft Visual Source Safe.</p>
  682. <p>Creates a new project in VSS.</p>
  683. <h3>Parameters</h3>
  684. <table class="attr">
  685. <tr>
  686. <th scope="col">Attribute</th>
  687. <th scope="col">Values</th>
  688. <th scope="col">Required</th>
  689. </tr>
  690. <tr>
  691. <td>login</td>
  692. <td><q>username,password</q></td>
  693. <td>No</td>
  694. </tr>
  695. <tr>
  696. <td>vsspath</td>
  697. <td>SourceSafe path of project to be created</td>
  698. <td>Yes</td>
  699. </tr>
  700. <tr>
  701. <td>ssdir</td>
  702. <td>directory where <kbd>ss.exe</kbd> resides.</td>
  703. <td>No; by default expected to be in <code>PATH</code></td>
  704. </tr>
  705. <tr>
  706. <td>quiet</td>
  707. <td>suppress output</td>
  708. <td>No; defaults to <q>off</q></td>
  709. </tr>
  710. <tr>
  711. <td>failOnError</td>
  712. <td>fail if there is an error creating the project.</td>
  713. <td>No; defaults to <q>true</q></td>
  714. </tr>
  715. <tr>
  716. <td>autoresponse</td>
  717. <td>What to respond with (sets the <kbd>-I</kbd> option). By default, <kbd>-I-</kbd> is
  718. used; values of <q>Y</q> or <q>N</q> will be appended to this.</td>
  719. <td>No</td>
  720. </tr>
  721. <tr>
  722. <td>comment</td>
  723. <td>The comment to use for this label. Empty or <q>-</q> for no comment.</td>
  724. <td>No</td>
  725. </tr>
  726. </table>
  727. <h3>Examples</h3>
  728. <p>Create the VSS Project <samp>$/existingProject/newProject</samp>.</p>
  729. <pre>&lt;vsscreate vsspath=&quot;$/existingProject/newProject&quot;/&gt;</pre>
  730. </body>
  731. </html>