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.

sos.html 14 KiB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479
  1. <!--
  2. Licensed to the Apache Software Foundation (ASF) under one or more
  3. contributor license agreements. See the NOTICE file distributed with
  4. this work for additional information regarding copyright ownership.
  5. The ASF licenses this file to You under the Apache License, Version 2.0
  6. (the "License"); you may not use this file except in compliance with
  7. the License. You may obtain a copy of the License at
  8. http://www.apache.org/licenses/LICENSE-2.0
  9. Unless required by applicable law or agreed to in writing, software
  10. distributed under the License is distributed on an "AS IS" BASIS,
  11. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12. See the License for the specific language governing permissions and
  13. limitations under the License.
  14. -->
  15. <html>
  16. <head>
  17. <link rel="stylesheet" type="text/css" href="../stylesheets/style.css">
  18. <title>SOS Tasks</title>
  19. </head>
  20. <body>
  21. <h1>SourceOffSite Tasks User Manual</h1>
  22. <p>by</p>
  23. <ul>
  24. <li><a href="mailto:jesse@cryptocard.com">Jesse Stockall</a></li>
  25. </ul>
  26. <p>Version 1.1 2002/01/23</p>
  27. <hr/>
  28. <h2>Contents</h2>
  29. <ul>
  30. <li><a href="#intro">Introduction</a></li>
  31. <li><a href="#tasks">The Tasks</a></li>
  32. </ul>
  33. <h2 id="intro">Introduction</h2>
  34. <p>These tasks provide an interface to
  35. the <a href="https://msdn.microsoft.com/en-us/library/3h0544kx(v=vs.80).aspx"
  36. target="_top">Microsoft Visual SourceSafe</a> SCM via <a href="https://sourcegear.com"
  37. target="_top">SourceGear's</a> <a href="https://sourcegear.com/sos/" target="_top">SourceOffSite</a>
  38. product. SourceOffSite is an add-on to Microsoft's VSS, that allows remote development teams and
  39. tele-commuters that need fast and secure read/write access to a centralized SourceSafe database via
  40. any TCP/IP connection. SOS provides Linux, Solaris &amp; Windows
  41. clients. The <code class="code">org.apache.tools.ant.taskdefs.optional.sos</code> package consists
  42. of a simple framework to support SOS functionality as well as some Apache Ant tasks encapsulating
  43. frequently used SOS commands. Although it is possible to use these commands on the desktop, they
  44. were primarily intended to be used by automated build systems. These tasks have been tested with
  45. SourceOffSite version 3.5.1 connecting to VisualSourceSafe 6.0. The tasks have been tested with
  46. Linux, Solaris &amp; Windows 2000.</p>
  47. <h2 id="tasks">The Tasks</h2>
  48. <table>
  49. <tbody>
  50. <tr>
  51. <td><a href="#SOSGet">sosget</a></td>
  52. <td>Retrieves a read-only copy of the specified project or file.</td>
  53. </tr>
  54. <tr>
  55. <td><a href="#SOSLabel">soslabel</a></td>
  56. <td>Assigns a label to the specified project.</td>
  57. </tr>
  58. <tr>
  59. <td><a href="#SOSCheckIn">soscheckin</a></td>
  60. <td>Updates VSS with changes made to a checked out file or project,
  61. and unlocks the VSS master copy.</td>
  62. </tr>
  63. <tr>
  64. <td><a href="#SOSCheckOut">soscheckout</a></td>
  65. <td>Retrieves a read-write copy of the specified project or file, locking the VSS master
  66. copy</td>
  67. </tr>
  68. </tbody>
  69. </table>
  70. <hr/>
  71. <h2>Task Descriptions</h2>
  72. <h2 id="SOSGet">SOSGet</h2>
  73. <h3>Description</h3>
  74. <p>Task to perform <var>Get</var> commands with SOS</p>
  75. <h3>Parameters</h3>
  76. <table class="attr">
  77. <thead>
  78. <tr>
  79. <th scope="col">Attribute</th>
  80. <th scope="col">Values</th>
  81. <th scope="col">Required</th>
  82. </tr>
  83. </thead>
  84. <tbody>
  85. <tr>
  86. <td>soscmd</td>
  87. <td>Directory which contains <kbd>soscmd(.exe)</kbd></td>
  88. <td>No; by default, the executable must be in the path</td>
  89. </tr>
  90. <tr>
  91. <td>vssserverpath</td>
  92. <td>path to the <samp>srcsafe.ini</samp>&mdash;eg. <samp>\\server\vss\srcsafe.ini</samp></td>
  93. <td>Yes</td>
  94. </tr>
  95. <tr>
  96. <td>sosserverpath</td>
  97. <td>address &amp; port of the SOS server&mdash;eg. <samp>192.168.0.1:8888</samp></td>
  98. <td>Yes</td>
  99. </tr>
  100. <tr>
  101. <td>projectpath</td>
  102. <td>SourceSafe project path&mdash;eg. <samp>$/SourceRoot/Project1</samp></td>
  103. <td>Yes</td>
  104. </tr>
  105. <tr>
  106. <td>file</td>
  107. <td>Filename to act upon</td>
  108. <td>No; by default, act upon the project</td>
  109. </tr>
  110. <tr>
  111. <td>username</td>
  112. <td>SourceSafe username</td>
  113. <td>Yes</td>
  114. </tr>
  115. <tr>
  116. <td>password</td>
  117. <td>SourceSafe password</td>
  118. <td>No</td>
  119. </tr>
  120. <tr>
  121. <td>localpath</td>
  122. <td>Override the working directory and get to the specified path</td>
  123. <td>No</td>
  124. </tr>
  125. <tr>
  126. <td>soshome</td>
  127. <td>The path to the SourceOffSite home directory</td>
  128. <td>No</td>
  129. </tr>
  130. <tr>
  131. <td>nocompress</td>
  132. <td><q>true|false</q>&mdash;disable compression</td>
  133. <td>No</td>
  134. </tr>
  135. <tr>
  136. <td>recursive</td>
  137. <td><q>true|false</q>&mdash;Only works with the <var>GetProject</var> command</td>
  138. <td>No</td>
  139. </tr>
  140. <tr>
  141. <td>version</td>
  142. <td>a version number to get&mdash;Only works with the <var>GetFile</var> command</td>
  143. <td>No</td>
  144. </tr>
  145. <tr>
  146. <td>label</td>
  147. <td>a label version to get&mdash;Only works with the <var>GetProject</var> command</td>
  148. <td>No</td>
  149. </tr>
  150. <tr>
  151. <td>nocache</td>
  152. <td><q>true|false</q>&mdash;Only needed if <code>SOSHOME</code> is set as an environment
  153. variable</td>
  154. <td>No</td>
  155. </tr>
  156. <tr>
  157. <td>verbose</td>
  158. <td><q>true|false</q>&mdash;Status messages are displayed</td>
  159. <td>No</td>
  160. </tr>
  161. </tbody>
  162. </table>
  163. <h3>Example</h3>
  164. <p>Connect to a SourceOffsite server on <samp>192.168.10.6:8888</samp>
  165. with <q>build</q>, <q>build</q> as the username &amp; password. The SourceSafe database resides on
  166. the same box as the SOS server &amp; the VSS database is at <samp>d:\vss\srcsafe.ini</samp>. Do a
  167. recursive <var>GetProject</var> on <samp>$/SourceRoot/project1</samp>, using <samp>tmp</samp> as the
  168. working directory.</p>
  169. <pre>
  170. &lt;sosget verbose=&quot;true&quot;
  171. recursive=&quot;true&quot;
  172. username=&quot;build&quot;
  173. password=&quot;build&quot;
  174. localpath=&quot;tmp&quot;
  175. projectpath=&quot;$/SourceRoot/project1&quot;
  176. sosserverpath=&quot;192.168.10.6:8888&quot;
  177. vssserverpath=&quot;d:\vss\srcsafe.ini&quot;/&gt;</pre>
  178. <hr/>
  179. <h2 id="SOSLabel">SOSLabel</h2>
  180. <h3>Description</h3>
  181. <p>Task to perform <var>Label</var> commands with SOS</p>
  182. <h3>Parameters</h3>
  183. <table class="attr">
  184. <thead>
  185. <tr>
  186. <th scope="col">Attribute</th>
  187. <th scope="col">Values</th>
  188. <th scope="col">Required</th>
  189. </tr>
  190. </thead>
  191. <tbody>
  192. <tr>
  193. <td>soscmd</td>
  194. <td>Directory which contains <kbd>soscmd(.exe)</kbd></td>
  195. <td>No; by default, the executable must be in the path</td>
  196. </tr>
  197. <tr>
  198. <td>vssserverpath</td>
  199. <td>path to the <samp>srcsafe.ini</samp>&mdash;eg. <samp>\\server\vss\srcsafe.ini</samp></td>
  200. <td>Yes</td>
  201. </tr>
  202. <tr>
  203. <td>sosserverpath</td>
  204. <td>address and port of the SOS server&mdash;eg. <samp>192.168.0.1:8888</samp></td>
  205. <td>Yes</td>
  206. </tr>
  207. <tr>
  208. <td>projectpath</td>
  209. <td>SourceSafe project path&mdash;eg. <samp>$/SourceRoot/Project1</samp></td>
  210. <td>Yes</td>
  211. </tr>
  212. <tr>
  213. <td>username</td>
  214. <td>SourceSafe username</td>
  215. <td>Yes</td>
  216. </tr>
  217. <tr>
  218. <td>password</td>
  219. <td>SourceSafe password</td>
  220. <td>No</td>
  221. </tr>
  222. <tr>
  223. <td>label</td>
  224. <td>The label to apply to a project</td>
  225. <td>Yes</td>
  226. </tr>
  227. <tr>
  228. <td>comment</td>
  229. <td>A comment to be applied to all files being labeled</td>
  230. <td>No</td>
  231. </tr>
  232. <tr>
  233. <td>verbose</td>
  234. <td><q>true|false</q>&mdash;Status messages are displayed</td>
  235. <td>No</td>
  236. </tr>
  237. </tbody>
  238. </table>
  239. <h3>Example</h3>
  240. <p>Connect to a SourceOffsite server on <samp>192.168.10.6:8888</samp>
  241. with <q>build</q>, <q>build</q> as the username &amp; password. The SourceSafe database resides on
  242. the same box as the SOS server &amp; the VSS database is at <samp>d:\vss\srcsafe.ini</samp>. Label
  243. the <samp>$/SourceRoot/project1</samp> project with <q>test label</q>.</p>
  244. <pre>
  245. &lt;soslabel username=&quot;build&quot;
  246. password=&quot;build&quot;
  247. label=&quot;test label&quot;
  248. projectpath=&quot;$/SourceRoot/project1&quot;
  249. sosserverpath=&quot;192.168.10.6:8888&quot;
  250. vssserverpath=&quot;d:\vss\srcsafe.ini&quot;/&gt;</pre>
  251. <hr/>
  252. <h2 id="SOSCheckIn">SOSCheckIn</h2>
  253. <h3>Description</h3>
  254. <p>Task to perform <var>CheckIn</var> commands with SOS</p>
  255. <h3>Parameters</h3>
  256. <table class="attr">
  257. <thead>
  258. <tr>
  259. <th scope="col">Attribute</th>
  260. <th scope="col">Values</th>
  261. <th scope="col">Required</th>
  262. </tr>
  263. </thead>
  264. <tbody>
  265. <tr>
  266. <td>soscmd</td>
  267. <td>Directory which contains <kbd>soscmd(.exe)</kbd></td>
  268. <td>No; by default, the executable must be in the path</td>
  269. </tr>
  270. <tr>
  271. <td>vssserverpath</td>
  272. <td>path to the <samp>srcsafe.ini</samp>&mdash;eg. <samp>\\server\vss\srcsafe.ini</samp></td>
  273. <td>Yes</td>
  274. </tr>
  275. <tr>
  276. <td>sosserverpath</td>
  277. <td>address and port of the SOS server&mdash;eg. <samp>192.168.0.1:8888</samp></td>
  278. <td>Yes</td>
  279. </tr>
  280. <tr>
  281. <td>projectpath</td>
  282. <td>SourceSafe project path&mdash;eg. <samp>$/SourceRoot/Project1</samp></td>
  283. <td>Yes</td>
  284. </tr>
  285. <tr>
  286. <td>file</td>
  287. <td>Filename to act upon</td>
  288. <td>No; by default, act upon the project</td>
  289. </tr>
  290. <tr>
  291. <td>username</td>
  292. <td>SourceSafe username</td>
  293. <td>Yes</td>
  294. </tr>
  295. <tr>
  296. <td>password</td>
  297. <td>SourceSafe password</td>
  298. <td>No</td>
  299. </tr>
  300. <tr>
  301. <td>localpath</td>
  302. <td>Override the working directory and get to the specified path</td>
  303. <td>No</td>
  304. </tr>
  305. <tr>
  306. <td>soshome</td>
  307. <td>The path to the SourceOffSite home directory</td>
  308. <td>No</td>
  309. </tr>
  310. <tr>
  311. <td>nocompress</td>
  312. <td><q>true|false</q>&mdash;disable compression</td>
  313. <td>No</td>
  314. </tr>
  315. <tr>
  316. <td>recursive</td>
  317. <td><q>true|false</q>&mdash;Only works with the <var>CheckOutProject</var> command</td>
  318. <td>No</td>
  319. </tr>
  320. <tr>
  321. <td>nocache</td>
  322. <td><q>true|false</q>&mdash;Only needed if <code>SOSHOME</code> is set as an environment
  323. variable</td>
  324. <td>No</td>
  325. </tr>
  326. <tr>
  327. <td>verbose</td>
  328. <td><q>true|false</q>&mdash;Status messages are displayed</td>
  329. <td>No</td>
  330. </tr>
  331. <tr>
  332. <td>comment</td>
  333. <td>A comment to be applied to all files being checked in</td>
  334. <td>No</td>
  335. </tr>
  336. </tbody>
  337. </table>
  338. <h3>Example</h3>
  339. <p>Connect to a SourceOffsite server on <samp>server1:8888</samp> with <q>build</q>, <q>build</q> as
  340. the username &amp; password. The SourceSafe database resides on a different box
  341. (<samp>server2</samp>) &amp; the VSS database is on a share called <samp>vss</samp>. Check-in only
  342. the <samp>foobar.txt</samp> file adding a comment of <q>comment abc</q>. Extra status messages will
  343. be displayed on screen.</p>
  344. <pre>
  345. &lt;soscheckin username=&quot;build&quot;
  346. password=&quot;build&quot;
  347. file=&quot;foobar.txt&quot;
  348. verbose=&quot;true&quot;
  349. comment=&quot;comment abc&quot;
  350. projectpath=&quot;$/SourceRoot/project1&quot;
  351. sosserverpath=&quot;server1:8888&quot;
  352. vssserverpath=&quot;\\server2\vss\srcsafe.ini&quot;/&gt;</pre>
  353. <hr/>
  354. <h2 id="SOSCheckOut">SOSCheckOut</h2>
  355. <h3>Description</h3>
  356. <p>Task to perform <var>CheckOut</var> commands with SOS</p>
  357. <h3>Parameters</h3>
  358. <table class="attr">
  359. <thead>
  360. <tr>
  361. <th scope="col">Attribute</th>
  362. <th scope="col">Values</th>
  363. <th scope="col">Required</th>
  364. </tr>
  365. </thead>
  366. <tbody>
  367. <tr>
  368. <td>soscmd</td>
  369. <td>Directory which contains <kbd>soscmd(.exe)</kbd></td>
  370. <td>No; by default, the executable must be in the path</td>
  371. </tr>
  372. <tr>
  373. <td>vssserverpath</td>
  374. <td>path to the <samp>srcsafe.ini</samp>&mdash;eg. <samp>\\server\vss\srcsafe.ini</samp></td>
  375. <td>Yes</td>
  376. </tr>
  377. <tr>
  378. <td>sosserverpath</td>
  379. <td>address and port of the SOS server&mdash;eg. <samp>192.168.0.1:8888</samp></td>
  380. <td>Yes</td>
  381. </tr>
  382. <tr>
  383. <td>projectpath</td>
  384. <td>SourceSafe project path&mdash;eg. <samp>$/SourceRoot/Project1</samp></td>
  385. <td>Yes</td>
  386. </tr>
  387. <tr>
  388. <td>file</td>
  389. <td>Filename to act upon</td>
  390. <td>No; by default, act upon the project</td>
  391. </tr>
  392. <tr>
  393. <td>username</td>
  394. <td>SourceSafe username</td>
  395. <td>Yes</td>
  396. </tr>
  397. <tr>
  398. <td>password</td>
  399. <td>SourceSafe password</td>
  400. <td>No</td>
  401. </tr>
  402. <tr>
  403. <td>localpath</td>
  404. <td>Override the working directory and get to the specified path</td>
  405. <td>No</td>
  406. </tr>
  407. <tr>
  408. <td>soshome</td>
  409. <td>The path to the SourceOffSite home directory</td>
  410. <td>No</td>
  411. </tr>
  412. <tr>
  413. <td>nocompress</td>
  414. <td><q>true|false</q>&mdash;disable compression</td>
  415. <td>No</td>
  416. </tr>
  417. <tr>
  418. <td>recursive</td>
  419. <td><q>true|false</q>&mdash;Only works with the <var>CheckOutProject</var> command</td>
  420. <td>No</td>
  421. </tr>
  422. <tr>
  423. <td>nocache</td>
  424. <td><q>true|false</q>&mdash;Only needed if <code>SOSHOME</code> is set as an environment variable</td>
  425. <td>No</td>
  426. </tr>
  427. <tr>
  428. <td>verbose</td>
  429. <td><q>true|false</q>&mdash;Status messages are displayed</td>
  430. <td>No</td>
  431. </tr>
  432. </tbody>
  433. </table>
  434. <h3>Example</h3>
  435. <p>Connect to a SourceOffsite server on <samp>server1:8888</samp> with <q>build</q>, <q>build</q> as
  436. the username &amp; password. The SourceSafe database resides on a different box
  437. (<samp>server2</samp>) &amp; the VSS database is on a share
  438. called <samp>vss</samp>. Check-out <q>project1</q>, only the <samp>project1</samp> directory will be
  439. locked as the recursive option was not set. Extra status messages will be displayed on
  440. screen. The <code>soscmd(.exe)</code> file to be used resides in <samp>/usr/local/bin</samp>.</p>
  441. <pre>
  442. &lt;soscheckout soscmd=&quot;/usr/local/bin&quot;
  443. verbose=&quot;true&quot;
  444. username=&quot;build&quot;
  445. password=&quot;build&quot;
  446. projectpath=&quot;$/SourceRoot/project1&quot;
  447. sosserverpath=&quot;192.168.10.6:8888&quot;
  448. vssserverpath=&quot;\\server2\vss\srcsafe.ini&quot;/&gt;</pre>
  449. </body>
  450. </html>