User Tools

Site Tools


subversion

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
subversion [2021/03/17 20:03] – created, partway peteyboysubversion [2021/03/18 17:36] (current) – [Subversion] added RCS link peteyboy
Line 1: Line 1:
 ====== Subversion ====== ====== Subversion ======
  
-//*THIS TUTORIAL IS UNDER CONSTRUCTION*//+This tutorial is not about using a version control system, or about using Subversion, but about how to get started with Subversion on SDF. Other source control tools available for looking into are [[hosted git repos - gitea on sdf | SDF-hosted git]] (newer, distributed version control), [[CVS]] (older technology than SVN) and [[RCS]] (the granddaddy)
  
  
-This tutorial is not about using a version control system, or about using Subversion, but about how to get started with Subversion on SDF+There are graphical tools such as TortoiseSVN, but we will start with Subversion's command-line tool (this is SDF we're talking about, right?) which is ''svn'', and //is installed on the cluster//
  
- +Subversion is normally intended to be hosted on a serverso working with it locally with an SDF user account is a little awkwardrequiring the use of ''file:<nowiki>//</nowiki>'' URLs. At the end of this tutorialwe will touch on how to set subversion up for remote access.
-There are graphical tools such as TortoiseSVNbut we will start with Subversion's command-line tool (this is SDF we're talking aboutright?) which is ''svn'', and //is installed on the cluster//+
  
 ===== Creating A Repository ===== ===== Creating A Repository =====
Line 38: Line 37:
 If you want to add an existing folder to your repository: If you want to add an existing folder to your repository:
  
-Let'add our website into our repository:+Let'import our website into our repository:!: Note that after the import is finished, the original local directory //does not become a working copy//. To begin working on that data in a versioned fashion, you still need to create a fresh working copy of that tree.
  
     cd html     cd html
-    cvs -d /path/to/homedir/cvs import -m "initial import" html user start+    svn import -m "initial import" file://localhost$HOME/.svn_repos/my-cool-project/html 
  
 In this command In this command
  
-  * '-d /path/to/homedir/cvsspecify the path to our repository. Alternatively you can add: +  * 'importis our 'svn' command 
-      export CVSROOT='/path/to/homedir/cvs to your ~/.profile file. You must use an   absolute path. +  * '-m "initial import"is a message that will appear in the log. 
-  * 'import' is our cvs command +  * '<nowiki>file://localhost$HOME/.svn_repos/my-cool-project/html</nowiki>' is the file pointer to our repo, with the last bit being the new directory where we want our 'htmlstuff to go
-  * '-m "initial import" is a message that will appear in the log. +
-  * 'html' is the name of our new module +
-  * 'useris a vendor tag, you can use your username or SDF or whatever +
-  * 'start' is a release tag.+
  
 You can modify the message, the module name and the tags to your liking, just keep in mind that in the rest of this tutorial we will use 'html' for the module name. You can modify the message, the module name and the tags to your liking, just keep in mind that in the rest of this tutorial we will use 'html' for the module name.
  
-===== Checking It Out =====+===== Checking It Out ===== 
 + 
 +   cd ~/coding-projects 
 +   svn co file://localhost$HOME/.svn_repos/my-cool-project/html
  
-   cd +To verify that you've checked out a working copy of just the //html// directory, first, do an ''ls html'' and see that the files are there. Second, run ''svn info''. It should output something like: 
-   mkdir tmp +<code> 
-   cd tmp +$ svn info html 
-   cvs -/path/to/homedir/cvs co html+Path: html 
 +Working Copy Root Path: /sdf/arpa/ns/p/peteyboy/coding-projects/html 
 +URL: file://localhost/sdf/arpa/ns/p/peteyboy/.svn_repos/my-cool-project/html 
 +Relative URL: ^/html 
 +Repository Root: file://localhost/sdf/arpa/ns/p/peteyboy/.svn_repos/my-cool-project 
 +Repository UUID: 6909fbfb-0895-7146-9482-bf1fd1033119 
 +Revision: 1 
 +Node Kind: directory 
 +Schedule: normal 
 +Last Changed Author: peteyboy 
 +Last Changed Rev: 1 
 +Last Changed Date: 2021-03-17 20:56:14 +0000 (Wed, 17 Mar 2021) 
 +</code>
  
-This should be enough to convince ourselves that the directory is now under version control.+===== Accessing It Remotely =====
  
-===== 5 Accessing It Remotely =====+One way to easily set up access to your svn repo for remote use is to set up [[trac_on_sdf|Trac]] on SDF
  
-We can access our repository from the outside using ssh, to do this we need to set the environment variable CVS_RSH so that cvs will use sshusing for instance:+Another is to run [[http://svnbook.red-bean.com/en/1.7/svn.serverconfig.svnserve.html#svn.serverconfig.svnserve.invoking | snvserve]], but this is complicated, as on SDF, subversion is installed on the cluster but not on the [[metaarray]]but users can only run processes on their [[meta_port_allocation| Allocated port]] on the metaarray. If a user wants to do this, they should post to [[bboard|bboard]] and request svn to be installed there.
  
subversion.1616011402.txt.gz · Last modified: 2021/03/17 20:03 by peteyboy