Difference between revisions of "Subversion"

From HCL
Jump to: navigation, search
Line 1: Line 1:
http://svnbook.red-bean.com/
+
http://svnbook.red-bean.com/  
  
* Subversion clients work with <code>.svn</code> directories - don't remove them.
+
*Subversion clients work with <code>.svn</code> directories - don't remove them.  
* Mind the version of the client (currently, 1.5, 1.6).
+
*Mind the version of the client (currently, 1.5, 1.6).
  
== Repositories ==
+
== Repositories ==
* http://hcl.ucd.ie/repos/project_name - read only
 
* https://hcl.ucd.ie/repos/project_name - authenticated user access
 
  
== To submit ==
+
*http://hcl.ucd.ie/repos/project_name - read only
* Software sources: models, code, resource files
+
*https://hcl.ucd.ie/repos/project_name - authenticated user access
* Documentation sources: texts, diagrams, data
 
* Configuration files
 
* Test sourses: code, input data
 
  
== Not to submit ==
+
== To submit ==
* Binaries: object files, libraries, executables
 
* Built documentation: html, pdf
 
* Personal settings: Eclipse projects, ...
 
* Test output
 
  
= Subversion for Users =
+
*Software sources: models, code, resource files
 +
*Documentation sources: texts, diagrams, data
 +
*Configuration files
 +
*Test sourses: code, input data
  
A good linux client: RapidSVN
+
== Not to submit  ==
 +
 
 +
*Binaries: object files, libraries, executables
 +
*Built documentation: html, pdf
 +
*Personal settings: Eclipse projects, ...
 +
*Test output
 +
 
 +
= Subversion for Users  =
 +
 
 +
A good linux client: [http://www.rapidsvn.org/index.php/Documentation RapidSVN].
 +
 
 +
== RapidSVN, Gforge &amp; passwords ==
 +
 
 +
'''Problem:''' RapidSVN doesn't directly support svn over ssh and so doesn't remember ssh passwords. And gforge.ucd.ie appares not to support passwordless authentication with publickey.&nbsp;
 +
 
 +
'''Solution:''' Use sshpass to remember password.
 +
 
 +
Note: this method involves having your gforge password in plain text, and so is a potential security risk - it should be different to other passwords etc.
 +
 
 +
Install sshpass &gt;=1.05 (note current ubuntu usese version 1.04 which just hangs - so install from sources or Ubuntu 12.4)
 +
 
 +
edit ~/.subversion/config, in&nbsp;[tunnels] section add the line:<br>
 +
 
 +
&nbsp;gforge = sshpass -f{path to file holding password} ssh -o PubkeyAuthentication=no -o ControlMaster=no
 +
 
 +
 
 +
 
 +
Then check out with:
 +
 
 +
svn checkout svn+gforge://&lt;user&gt;@gforge.ucd.ie/var/lib/gforge/chroot/scmrepos/svn/fupermod/trunk fupermod
 +
 
 +
(where previously it was:&nbsp;svn checkout svn+ssh)

Revision as of 16:49, 14 March 2012

http://svnbook.red-bean.com/

  • Subversion clients work with .svn directories - don't remove them.
  • Mind the version of the client (currently, 1.5, 1.6).

Repositories

To submit

  • Software sources: models, code, resource files
  • Documentation sources: texts, diagrams, data
  • Configuration files
  • Test sourses: code, input data

Not to submit

  • Binaries: object files, libraries, executables
  • Built documentation: html, pdf
  • Personal settings: Eclipse projects, ...
  • Test output

Subversion for Users

A good linux client: RapidSVN.

RapidSVN, Gforge & passwords

Problem: RapidSVN doesn't directly support svn over ssh and so doesn't remember ssh passwords. And gforge.ucd.ie appares not to support passwordless authentication with publickey. 

Solution: Use sshpass to remember password.

Note: this method involves having your gforge password in plain text, and so is a potential security risk - it should be different to other passwords etc.

Install sshpass >=1.05 (note current ubuntu usese version 1.04 which just hangs - so install from sources or Ubuntu 12.4)

edit ~/.subversion/config, in [tunnels] section add the line:

 gforge = sshpass -f{path to file holding password} ssh -o PubkeyAuthentication=no -o ControlMaster=no


Then check out with:

svn checkout svn+gforge://<user>@gforge.ucd.ie/var/lib/gforge/chroot/scmrepos/svn/fupermod/trunk fupermod

(where previously it was: svn checkout svn+ssh)