Development

SymfonyRepositoryTips

You must first sign up to be able to contribute.

Symfony Repository Tips

Those who want to checkout symfony from the repository, and aren't as experienced with subversion as others probably will want to set the subversion auto-props settings to match, or at least include the file types used in the Symfony repository.

TortoiseSVN Users

If you use TortoiseSVN as your svn client, then you can edit the settings as follows:

  • Copy the text from the auto-props settings section on this page.
  • Open Windows Explorer.
  • Right-click on your Local Disk.
  • Select the TortoiseSVN Submenu, followed by Settings.
  • In the TortoiseSVN Settings dialog box that appears, you will see a button labeled Edit. Click this button.
  • Scroll to the end of the file and paste the copied text. Check to make sure that there is only one enable-auto-props=yes line uncommented, as well as only one [auto-props] section.
  • Save the file.

Now you can checkout the Symfony repository and get the correct line endings for your system.

Non TortoiseSVN Users

If you are using another subversion client, other than TortoiseSVN, then do the following:

  • Copy the text from the auto-props settings section on this page.
  • Open Windows Explorer.
  • Navigate to your %APPLICATIONDATA%subversion\ directory (i.e. c:\Documents and Settings\<user>\Application Data\Subversion\)
  • Open the file config.
  • Scroll to the end of the file and paste the copied text. Check to make sure that there is only one enable-auto-props=yes line uncommented, as well as only one [auto-props] section.
  • Save the file.

Now you can checkout the Symfony repository and get the correct line endings for your system.

*nix Users

These instructions are based on gleanings from linix configs documents. They may not be correct, but at least will get a new user headed in the right direction, I hope.

  • Edit the local file ~/.subversion/config
  • Merge the text below into your config file (if you have no auto-props already set, then just add the auto-props settings below your file.
  • Save your file.

Now you can checkout the Symfony repository and get the correct line endings for your system.

auto-props settings

[miscellany]
enable-auto-props = yes

[auto-props]
# Scriptish formats
*.bat        = svn:eol-style=native; svn:keywords=Id; svn-mine-type=text/plain
*.bsh        = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/x-beanshell
*.cgi        = svn:eol-style=native; svn:keywords=Id; svn-mine-type=text/plain
*.cmd        = svn:eol-style=native; svn:keywords=Id; svn-mine-type=text/plain
*.js         = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/javascript
*.php        = svn:eol-style=native; svn:keywords=Id Rev Date; svn:mime-type=text/x-php
*.pl         = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/x-perl; svn:executable
*.pm         = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/x-perl
*.py         = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/x-python; svn:executable
*.sh         = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/x-sh; svn:executable

# Image formats
*.bmp        = svn:mime-type=image/bmp
*.gif        = svn:mime-type=image/gif
*.ico        = svn:mime-type=image/ico
*.jpeg       = svn:mime-type=image/jpeg
*.jpg        = svn:mime-type=image/jpeg
*.png        = svn:mime-type=image/png
*.tif        = svn:mime-type=image/tiff
*.tiff       = svn:mime-type=image/tiff

# Data formats
*.pdf        = svn:mime-type=application/pdf
*.avi        = svn:mime-type=video/avi
*.doc        = svn:mime-type=application/msword
*.eps        = svn:mime-type=application/postscript
*.gz         = svn:mime-type=application/gzip
*.mov        = svn:mime-type=video/quicktime
*.mp3        = svn:mime-type=audio/mpeg
*.ppt        = svn:mime-type=application/vnd.ms-powerpoint
*.ps         = svn:mime-type=application/postscript
*.psd        = svn:mime-type=application/photoshop
*.rdf        = svn:eol-style=native; svn:keywords=Id
*.rss        = svn:eol-style=native; svn:keywords=Id
*.rtf        = svn:mime-type=text/rtf
*.swf        = svn:mime-type=application/x-shockwave-flash
*.tgz        = svn:mime-type=application/gzip
*.wav        = svn:mime-type=audio/wav
*.xls        = svn:mime-type=application/vnd.ms-excel
*.zip        = svn:mime-type=application/zip

# Text formats
.htaccess    = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
*.css        = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/css
*.dtd        = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/xml
*.html       = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/html
*.ini        = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
*.sql        = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/x-sql
*.txt        = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
*.xhtml      = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/xhtml+xml
*.xml        = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/xml
*.xsd        = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/xml
*.xsl        = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/xml
*.xslt       = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/xml
*.xul        = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/xul
*.yml        = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
CHANGES      = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
COPYING      = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
INSTALL      = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
Makefile*    = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
README       = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
TODO         = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain

# Code formats
*.c          = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
*.cpp        = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
*.h          = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain
*.java       = svn:eol-style=native; svn:keywords=Id; svn:mime-type=text/plain

Version 0.6 users without PEAR

Any users using v0.6 without PEAR, and who are setting up new projects, may find this tip of use. I have found the following locations were not copied from the base directory to the new project. This issue might be solved via URL rewriting, or these folders could just be copied to the new project:

  • basedir/data/symfony
  • basedir/lib/symfony
  • basedir/lib/pake
  • basedir/lib/phing

Web resources for SVN

http://svnbook.red-bean.com : A free online book for SVN 1.x published by O'Reilly Media.


If you find any directions here to be incorrect, then just fix them! :)