Users' Software Repository
PSDM uses Subversion (SVN) for the code management and versioning task. Currently, official LCLS code such as PSANA, PYANA, etc. is located in the Software Repository which is enabled to LCLS software development team only. For those users who would like to develop their own code, contribute to the LCLS project, and share their code with other user groups, there is a users' software repository,
https://pswww.slac.stanford.edu/svn/userrepo (this IS NOT a web reference!)
assigned to environment variable SIT_SVN_USER
.
Creating Your Own User Repository
Use the following command to create your own package:
psvn -u newpkg <my-new-package-name>
The package name should not include the "<>" above. Once you have created your package you can check it out of the repository with:
svn co http://pswww.slac.stanford.edu/svn/pdsrepo/pdsrepo/<my-new-package-name>
The above would work on machines around the world if you have a SLAC "kerberos ticket". You can see your tickets with the command "klist". You can get at ticket on systems with a "kinit" command like this:
kinit mySlacAccountName@SLAC.STANFORD.EDU (the CAPS are required for SLAC.STANFORD.EDU!)
If you don't have a ticket, you can get readonly access to the repository like this:
svn co http://pswww.slac.stanford.edu/svn-readonly/pdsrepo/<my-new-package-name>
If you are working in a psana "test release" instead of the above, you can checkout your code with:
addpkg -u <my-new-package-name>
svn commit -m "my message describing changes" . (note the "." at the end of the line!)
Access to users' software repository
To see content of users' or PSDM software repository use command
svn ls -v $SIT_SVN_USER
or
svn ls -v $SIT_SVN
respectively. For example, for one of the packages one can get
> svn ls -v $SIT_SVN_USER 5 ofte@SLA Jun 07 2012 ./ 5 ofte@SLA Jun 07 2012 pyana_modules/ > svn ls -v $SIT_SVN_USER/pyana_modules/ 5 ofte@SLA Jun 07 2012 ./ 4 ofte@SLA Jun 07 2012 branches/ 4 ofte@SLA Jun 07 2012 tags/ 5 ofte@SLA Jun 07 2012 trunk/ > svn ls -v $SIT_SVN_USER/pyana_modules/trunk/ 5 ofte@SLA Jun 07 2012 ./ 5 ofte@SLA 1188 Jun 07 2012 SConscript 5 ofte@SLA Jun 07 2012 doc/ 5 ofte@SLA Jun 07 2012 src/ > svn ls -v $SIT_SVN_USER/pyana_modules/trunk/src 5 ofte@SLA Jun 07 2012 ./ 5 ofte@SLA 371 Jun 07 2012 img_peakfinder.cfg 5 ofte@SLA 11373 Jun 07 2012 img_peakfinder.py
Read-only access to both repositories is provided through the web interface: