project_management:subversion
Differences
This shows you the differences between two versions of the page.
| project_management:subversion [2010/06/09 12:12] – created 172.26.14.218 | project_management:subversion [2020/01/30 12:52] (current) – removed aorth | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ====== Subversion ====== | ||
| - | Subversion (SVN) uses a centralized model to manage software projects. | ||
| - | |||
| - | The repository can be on the local machine or a remote server, as SVN supports several protocols (%%svn:// | ||
| - | |||
| - | ===== Install ===== | ||
| - | < | ||
| - | Configure Apache: | ||
| - | |||
| - | ===== Create a New Project ===== | ||
| - | ==== On The Server ==== | ||
| - | |||
| - | Create the project skeleton (the name isn't important, it is only a folder in the file system): | ||
| - | < | ||
| - | $ sudo mkdir / | ||
| - | |||
| - | Create the SVN repository, : | ||
| - | < | ||
| - | $ sudo svnadmin create / | ||
| - | |||
| - | Import the initial project skeleton: | ||
| - | < | ||
| - | |||
| - | Clean up temp files and repository permissions. The repository needs '' | ||
| - | < | ||
| - | $ sudo find / | ||
| - | $ sudo find / | ||
| - | $ sudo chown -R root.www-data / | ||
| - | |||
| - | Tell Apache to use ''/ | ||
| - | < | ||
| - | DAV svn | ||
| - | SVNPath / | ||
| - | AuthzSVNAccessFile / | ||
| - | |||
| - | AuthName " | ||
| - | AuthType Basic | ||
| - | |||
| - | PerlAuthenHandler Apache2:: | ||
| - | PerlSetVar MSADDomain ilri.cgiarad.org | ||
| - | PerlSetVar MSADServer 172.26.0.218 | ||
| - | |||
| - | # require any valid AD user to access the repo via Apache, | ||
| - | # then use fine-grained controls in the AuthzSVNAccessFile | ||
| - | # above. See: http:// | ||
| - | require valid-user | ||
| - | |||
| - | # Or, use specific (but dumb) controls here in the Apache | ||
| - | # config file instead of the AuthzSVNAccessFile above. | ||
| - | #require user aorth akihara | ||
| - | </ | ||
| - | Gracefully restart Apache to enable the changes: | ||
| - | < | ||
| - | |||
| - | ==== On The Client ==== | ||
| - | |||
| - | Check out the development branch (" | ||
| - | < | ||
| - | $ svn co --username=aorth https:// | ||
| - | |||
| - | Import your existing code base (" | ||
| - | < | ||
| - | $ cp -R / | ||
| - | $ svn add * | ||
| - | $ svn commit -m " | ||
| - | |||
| - | ===== Ignoring Files and Folders ===== | ||
| - | Sometimes you need to ignore certain files/ | ||
| - | < | ||
| - | And then place a single " | ||
| - | |||
| - | ===== Tagging Releases ===== | ||
| - | ==== From trunk ==== | ||
| - | < | ||
| - | $ svn copy . http:// | ||
| - | |||
| - | Switch a working copy to a certain release: | ||
| - | < | ||
| - | |||
| - | ===== Links ===== | ||
| - | * http:// | ||
project_management/subversion.1276085553.txt.gz · Last modified: by 172.26.14.218
