== Windows Installation instructions for SVN w/TRAC ==
Versions used in this example (Available 2004-05-13):
* Apache 2.0.49
* Python 2.3.3
* SVN 1.0.2
* SQLite 2.8.13
* PySQLite 0.5.0-py2.3
* Trac 0.6.1
Email [mailto:Daragh@i2i-Tech.com Daragh Fitzpatrick] for more info,
or if you changed this page (since this Wiki does not support watch/subscription)
----
Note: This example installs to D:
=== Arm Yourself ===
1. Get & Read book
http://svnbook.red-bean.com
=== Install SubVersioN Pre-Requisites ===
2. Install Python
http://www.python.org
[[br]]Add D:Python to path
3. Install Apache
http://httpd.apache.org
4. Install Subversion
http://subversion.tigris.org
=== Create Repository ===
5. Create Repository Directory
{{{
D:> md d:svn
}}}
6. Create Repository
{{{
D:> svnadmin create d:svn
epo1
}}}
7. Create skeleton repository structure in d: empproject
Example:
{{{
/project
/vendor
/tags
/trunk
files
/projectname
/branches
/tags
/trunk
files
}}}
8. Build Repository Tree
{{{
D:> svn import d: empproject file:///d:/svn/repo1 -m "Initial Load"
}}}
9. Create local sandbox
{{{
D:> svn checkout file:///d:/svn/repo1 d:project
}}}
=== Configure Apache ===
10. Copy files
{{{
D:> copy d:progra~1subver~1httpd*.* d:progra~1apache~1apache2modules
}}}
11. Create password file (w/user 'admin')
{{{
D:> d:progra~1apache~1apache2inhtpasswd -cm d:svn.htaccess admin
}}}
12. Configure Apache (edit httpd.conf)
12.1. Restrict access/lockdown as appropriate
12.2. Add Modules to httpd.conf
12.1.1. Uncomment:
{{{
LoadModule dav_module modules/mod_dav.so
}}}
12.1.2. Add (after):
{{{
# Subversion
LoadModule dav_svn_module modules/mod_dav_svn.so
}}}
12.3. Add location root for multiple repositories
{{{
# Subversion
DAV svn
# any /svn/foo URL will map to a repository D:/svn/foo
SVNParentPath D:/svn
AuthType Basic
AuthName "Subversion repository"
AuthUserFile d:/svn/.htaccess
Require valid-user
}}}
13. Restart your MACHINE
14. Test your install of Subversion
http://[hostname]:80/svn/repo1
Phew! Subversion is installed and working - Grab a beverage for yourself.
----
=== Setup Users ===
15. Add users to password file
{{{
D:> d:progra~1apache~1apache2inhtpasswd -m d:svn.htaccess user
}}}
=== Install TRAC Prerequisites ===
16. Install Subversion Python Bindings
(Get from same download page as Subversion)
[[br]]Copy libsvn and svn directories to D:Python23Lib
17. Install SQLite
http://www.sqlite.org
[[br]]Copy sqlite.exe to D:Program FilesSQLite
18. Install PySQLite
http://pysqlite.sourceforge.net
19. Install TRAC
http://www.edgewall.com/products/trac/
=== Fix a few things ===
20. (BUG) Edit first line of D:Python23Scripts rac-admin to have:
{{{
#!D:Python23python.exe
}}}
21. (BUG) Edit first line of D:Python23share raccgi-bin rac.cgi to have:
{{{
#!D:Python23python.exe
}}}
22. Copy CGI
{{{
D:> copy d:python23share raccgi-bin rac.cgi d:progra~1apache~1apache2cgi-bin
}}}
23. (BUG) not able to run trac-admin initenv... Not available in 0.6.1
=== Configure TRAC DB ===
24. Run trac-admin
{{{
D:Python23Scripts> python trac-admin d:/svn/trac.db
}}}
25. Initialize DB
{{{
Trac [d:/svn/trac.db]> initdb
}}}
{{{
Enter project name
Project
Enter path to repository
d:svn
epo1
Enter path to templates
d:Python23share rac emplates
(BUG) Note error message regarding wiki-pages
}}}
26. (BUG) Load Wiki
{{{
Trac [d:/svn/trac.db]> wiki load d:/python23/share/trac/wiki-default
}}}
27. Add administrative permissions
{{{
Trac [d:/svn/trac.db]> permission add admin TICKET_ADMIN
Trac [d:/svn/trac.db]> permission add admin REPORT_CREATE
Trac [d:/svn/trac.db]> permission add admin REPORT_MODIFY
Trac [d:/svn/trac.db]> permission add admin REPORT_DELETE
Trac [d:/svn/trac.db]> permission add admin REPORT_ADMIN
Trac [d:/svn/trac.db]> permission add admin WIKI_DELETE
Trac [d:/svn/trac.db]> permission add admin WIKI_ADMIN
Trac [d:/svn/trac.db]> permission add admin CONFIG_VIEW
Trac [d:/svn/trac.db]> permission add admin TRAC_ADMIN
}}}
=== Add TRAC to Apache ===
28. Edit httpd.conf:
Add: (copy this - there's a typo in Edgewall's version)
{{{
# TRAC
Alias /trac "D:/Python23/share/trac/htdocs"
Options Indexes MultiViews
AllowOverride None
Order allow,deny
Allow from all
SetEnv TRAC_DB "d:/svn/trac.db"
AuthType Basic
AuthName "Project"
AuthUserFile D:/svn/.htaccess
Require valid-user
}}}
29. Restart Apache
30. Hold your breath, test TRAC install
http://[hostname]:80/cgi-bin/trac.cgi
=== Finally... ===
31. Install SVN Clients as necessary (try [http://rapidsvn.tigris.org Rapid SVN] & [http://tortoisesvn.tigris.org/ Tortoise SVN])
32. Don't forget to lock down the security on the box!
33. Now go get a *real* drink
----
Email [mailto:Daragh@i2i-Tech.com Daragh Fitzpatrick] with any questions!
----