Skip to content

#cfunited Notes – “Subversion for Smarties”

-late-

Changelists

  • added in 1.5 (currently at 1.64)
  • groups files for operations (commit and diff)
  • great for grouping files for bug fix

You should know about changelists

  • part of working copy, not repository
  • only works with files and not dirs
  • one changelist assignment per file (if you put a file in a list that was previously in another list, it will move)
  • changelists cleared at commit (option to keep)

SVN Properties

  • think “metadata” for each file
  • stored in .svn/props
  • checked into repo with file
  • keywords – used for keyword substitution but must be turned on. examples: Date, Rev, Author, HeadURL, Id (case sensitive)

? per file?

Automate Keyword Substitution

  • config file “miscellany” section
  • /%AppData%/Subversion/ (windows path)
  • applies to working copy, not repo.

Hooks

  • run a program at certain points in commit process
  • implemented as bat file in windows / shell script in *nix
  • live in repo and not working copy
  • examples by default found in “repo/hooks”
  • types: start-commit, pre-commit, post-commit, pre-revprop-change, post-revprop-change, pre-lock, post-lock, pre-unlock, post-unlock
  • you shouldn’t use the hook to change the file – this leads to working copies that don’t represent the repo.
  • tips: permissions, execute with an empty environment
  • uses: push code to staging server, email notifications, update issue management software

RIA Forge Projects

  • Rob Gonda’s Abstraction Layer
  • SVN Sync – web browser for repo
  • deployment builder – enterprise level deployment tool using cf/ant/svn
  • skweegee – does what trac does + more (formerly trac_fu)
  • svnauthz – manipulate authz files
  • svnutil – air app to remove .svn info

Resources

http://svnbook.red-bean.com

Post a Comment

Your email is never published nor shared. Required fields are marked *
*
*