SlideShare a Scribd company logo
Subversion An Open-source Revision Control Systems
Why revision control? Keep track of changes to your code base over time. Retrieve past revisions. Compare differences in revisions (see exactly what has changed). More than one person can work on the same code base concurrently, even the same files.
Why Subversion? Created as a compelling replacement for CVS and by most accounts has met this goal. Free/Open-source Used by many free/open-source projects. Mature and stable software.
Subversion's Architecture Subversion is made up of several layers including client access (command line or GUI), repository access (DAV, SVN, or Local), and repository storage (Berkeley DB or FSFS) . See  Subversion's Architecture .
Installing Subversion Installing Subversion is beyond the scope of this presentation. See  Installing Subversion  in the Version Control with Subversion book. There are also several hosted Subversion options. See the “Sites that Offer Subversion Hosting” section on the  Subversion Links  page.
Basic Concepts Repository – centralized data store Lock-modify-unlock Copy-modify-merge Working copy BASE
Typical Work Flow svn checkout  (creates your working  copy ) Modify  directories and/or files in the working copy. svn update  ( copy  and  merge  public repository changes into private working copy) svn commit  ( copy  and  merge  private working copy modifications into public repository) Go back to step 2 and repeat.
Common Working Copy Operations Make modifications to files already in the working copy. svn add  (adds files and/or directories) svn copy  (copy a file or directory) svn delete  (delete a file or directory) svn diff  (display differences between working copy item(s) and BASE) svn move  (move file or directory – equivalent to a copy followed by a delete) svn revert  (revert working copy changes) svn status  (print status of working copy files and directories)
Standard Repository Layout /trunk /branches /tags Trunk holds the “main line” of development. Trunk is copied (Subversion copies are “cheap”) to a branch, typically when preparing a release. A branch is copied to a tag, usually to “tag” a release. Tags should never be committed to.
Example Repository Layout /trunk <project files> /branches /1.0.x <project files> /1.1.x <project files> /tags /1.0.1 <project files> /1.0.2 <project files> /1.0.3 <project files> /1.1.0 <project files>
Advanced Topics Merging branches Vendor branches Keyword substitution ( svn:keywords ) End-of-line character ( svn:eol-style ) Externals definitions ( svn:externals ) Ignore unversioned items ( svn:ignore ) Read the  Version Control with Subversion  book! It's freely available online and a  very  well written resource.
Questions?

More Related Content

What's hot (20)

PPTX
SFDC UI - Advanced Visualforce
Sujit Kumar
 
PPT
Zend framework 02 - mvc
Tricode (part of Dept)
 
PPTX
Zend MVC pattern based Framework – Best for Enterprise web applications
Etisbew Technology Group
 
PPT
Laravel & Composer presentation - extended
Cvetomir Denchev
 
PDF
MVC 1.0 als alternative Webtechnologie
OPEN KNOWLEDGE GmbH
 
PDF
AEM - A Collection of developer friendly tools
Ashokkumar T A
 
PPTX
Servlet.ppt
VMahesh5
 
PDF
Play Framework: The Basics
Philip Langer
 
KEY
深入淺出RoR
Eric Lee
 
PPTX
Automated testing with Drupal
Promet Source
 
PDF
ElggCamp Santiago - Dev Edition
Brett Profitt
 
PPTX
Harish Aspnet Deployment
rsnarayanan
 
PDF
A Short Intorduction to JasperReports
Guo Albert
 
PPTX
Workflows and Digital Signatures
ColdFusionConference
 
PDF
Dive into Play Framework
Maher Gamal
 
KEY
Integration Testing With Cucumber How To Test Anything J A O O 2009
Dr Nic Williams
 
PPTX
New Features of ASP.NET 4.0
Buu Nguyen
 
PDF
6 introduction-php-mvc-cakephp-m6-views-slides
MasterCode.vn
 
PPT
Apache Ant
Vinod Kumar V H
 
PPT
Introduction to Play Framework
Warren Zhou
 
SFDC UI - Advanced Visualforce
Sujit Kumar
 
Zend framework 02 - mvc
Tricode (part of Dept)
 
Zend MVC pattern based Framework – Best for Enterprise web applications
Etisbew Technology Group
 
Laravel & Composer presentation - extended
Cvetomir Denchev
 
MVC 1.0 als alternative Webtechnologie
OPEN KNOWLEDGE GmbH
 
AEM - A Collection of developer friendly tools
Ashokkumar T A
 
Servlet.ppt
VMahesh5
 
Play Framework: The Basics
Philip Langer
 
深入淺出RoR
Eric Lee
 
Automated testing with Drupal
Promet Source
 
ElggCamp Santiago - Dev Edition
Brett Profitt
 
Harish Aspnet Deployment
rsnarayanan
 
A Short Intorduction to JasperReports
Guo Albert
 
Workflows and Digital Signatures
ColdFusionConference
 
Dive into Play Framework
Maher Gamal
 
Integration Testing With Cucumber How To Test Anything J A O O 2009
Dr Nic Williams
 
New Features of ASP.NET 4.0
Buu Nguyen
 
6 introduction-php-mvc-cakephp-m6-views-slides
MasterCode.vn
 
Apache Ant
Vinod Kumar V H
 
Introduction to Play Framework
Warren Zhou
 

Similar to Burlington, VT PHP Users Group Subversion Presentation (20)

ODP
Practical SVN for PHP Developers
Lorna Mitchell
 
PPTX
SVN
enggHeads
 
KEY
Version control with subversion
xprayc
 
PDF
Subversion: A Getting Started Presentation
Nap Ramirez
 
PPTX
Source version control using subversion
Mangesh Bhujbal
 
PPTX
Slide set 7 (Source Code Management History Overview) - Copy.pptx
UTKARSHBHARDWAJ71
 
PPTX
Subversion
Vaibhav Sakhalkar
 
PPT
Subversion on .Unix
Trong Dinh
 
PPT
Subversion on .Unix
Trong Dinh
 
PPT
Subversion (SVN)
manugoel2003
 
ODP
Svn Basic Tutorial
Marco Pivetta
 
PPTX
Version Control System
TechAhead
 
PPT
Subversion
wiradikusuma
 
PDF
Introduction to Subversion
Atul Jha
 
PPT
Subversion Overview
polarion
 
PDF
Version control with Subversion
O. R. Kumaran
 
PDF
Git your life for fun & profit
Interface ULg, LIEGE science park
 
PPTX
Subversion
thebdot1
 
PDF
Git your life for fun & profit
Geeks Anonymes
 
PDF
SVN essentials
Bedis ElAchèche
 
Practical SVN for PHP Developers
Lorna Mitchell
 
Version control with subversion
xprayc
 
Subversion: A Getting Started Presentation
Nap Ramirez
 
Source version control using subversion
Mangesh Bhujbal
 
Slide set 7 (Source Code Management History Overview) - Copy.pptx
UTKARSHBHARDWAJ71
 
Subversion
Vaibhav Sakhalkar
 
Subversion on .Unix
Trong Dinh
 
Subversion on .Unix
Trong Dinh
 
Subversion (SVN)
manugoel2003
 
Svn Basic Tutorial
Marco Pivetta
 
Version Control System
TechAhead
 
Subversion
wiradikusuma
 
Introduction to Subversion
Atul Jha
 
Subversion Overview
polarion
 
Version control with Subversion
O. R. Kumaran
 
Git your life for fun & profit
Interface ULg, LIEGE science park
 
Subversion
thebdot1
 
Git your life for fun & profit
Geeks Anonymes
 
SVN essentials
Bedis ElAchèche
 
Ad

More from Bradley Holt (15)

PDF
Domain-Driven Design at ZendCon 2012
Bradley Holt
 
PDF
Domain-Driven Design
Bradley Holt
 
PDF
Entity Relationships in a Document Database at CouchConf Boston
Bradley Holt
 
KEY
CouchConf NYC CouchApps
Bradley Holt
 
KEY
ZendCon 2011 UnCon Domain-Driven Design
Bradley Holt
 
KEY
ZendCon 2011 Learning CouchDB
Bradley Holt
 
KEY
jQuery Conference Boston 2011 CouchApps
Bradley Holt
 
KEY
OSCON 2011 CouchApps
Bradley Holt
 
KEY
OSCON 2011 Learning CouchDB
Bradley Holt
 
KEY
Load Balancing with Apache
Bradley Holt
 
PDF
CouchDB at New York PHP
Bradley Holt
 
KEY
Intermediate PHP
Bradley Holt
 
PDF
New Features in PHP 5.3
Bradley Holt
 
PDF
Introduction to PHP
Bradley Holt
 
PDF
Resource-Oriented Web Services
Bradley Holt
 
Domain-Driven Design at ZendCon 2012
Bradley Holt
 
Domain-Driven Design
Bradley Holt
 
Entity Relationships in a Document Database at CouchConf Boston
Bradley Holt
 
CouchConf NYC CouchApps
Bradley Holt
 
ZendCon 2011 UnCon Domain-Driven Design
Bradley Holt
 
ZendCon 2011 Learning CouchDB
Bradley Holt
 
jQuery Conference Boston 2011 CouchApps
Bradley Holt
 
OSCON 2011 CouchApps
Bradley Holt
 
OSCON 2011 Learning CouchDB
Bradley Holt
 
Load Balancing with Apache
Bradley Holt
 
CouchDB at New York PHP
Bradley Holt
 
Intermediate PHP
Bradley Holt
 
New Features in PHP 5.3
Bradley Holt
 
Introduction to PHP
Bradley Holt
 
Resource-Oriented Web Services
Bradley Holt
 
Ad

Recently uploaded (20)

PDF
Biography of Daniel Podor.pdf
Daniel Podor
 
PPTX
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
PDF
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PDF
Staying Human in a Machine- Accelerated World
Catalin Jora
 
PDF
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
PPTX
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
PDF
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
PDF
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PDF
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
PPTX
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
PPTX
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
PPTX
Q2 FY26 Tableau User Group Leader Quarterly Call
lward7
 
PDF
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
PPTX
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
PDF
CIFDAQ Market Wrap for the week of 4th July 2025
CIFDAQ
 
PDF
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
DOCX
Python coding for beginners !! Start now!#
Rajni Bhardwaj Grover
 
PDF
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
PPTX
From Sci-Fi to Reality: Exploring AI Evolution
Svetlana Meissner
 
PDF
IoT-Powered Industrial Transformation – Smart Manufacturing to Connected Heal...
Rejig Digital
 
Biography of Daniel Podor.pdf
Daniel Podor
 
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
Staying Human in a Machine- Accelerated World
Catalin Jora
 
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
Q2 FY26 Tableau User Group Leader Quarterly Call
lward7
 
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
CIFDAQ Market Wrap for the week of 4th July 2025
CIFDAQ
 
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
Python coding for beginners !! Start now!#
Rajni Bhardwaj Grover
 
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
From Sci-Fi to Reality: Exploring AI Evolution
Svetlana Meissner
 
IoT-Powered Industrial Transformation – Smart Manufacturing to Connected Heal...
Rejig Digital
 

Burlington, VT PHP Users Group Subversion Presentation

  • 1. Subversion An Open-source Revision Control Systems
  • 2. Why revision control? Keep track of changes to your code base over time. Retrieve past revisions. Compare differences in revisions (see exactly what has changed). More than one person can work on the same code base concurrently, even the same files.
  • 3. Why Subversion? Created as a compelling replacement for CVS and by most accounts has met this goal. Free/Open-source Used by many free/open-source projects. Mature and stable software.
  • 4. Subversion's Architecture Subversion is made up of several layers including client access (command line or GUI), repository access (DAV, SVN, or Local), and repository storage (Berkeley DB or FSFS) . See Subversion's Architecture .
  • 5. Installing Subversion Installing Subversion is beyond the scope of this presentation. See Installing Subversion in the Version Control with Subversion book. There are also several hosted Subversion options. See the “Sites that Offer Subversion Hosting” section on the Subversion Links page.
  • 6. Basic Concepts Repository – centralized data store Lock-modify-unlock Copy-modify-merge Working copy BASE
  • 7. Typical Work Flow svn checkout (creates your working copy ) Modify directories and/or files in the working copy. svn update ( copy and merge public repository changes into private working copy) svn commit ( copy and merge private working copy modifications into public repository) Go back to step 2 and repeat.
  • 8. Common Working Copy Operations Make modifications to files already in the working copy. svn add (adds files and/or directories) svn copy (copy a file or directory) svn delete (delete a file or directory) svn diff (display differences between working copy item(s) and BASE) svn move (move file or directory – equivalent to a copy followed by a delete) svn revert (revert working copy changes) svn status (print status of working copy files and directories)
  • 9. Standard Repository Layout /trunk /branches /tags Trunk holds the “main line” of development. Trunk is copied (Subversion copies are “cheap”) to a branch, typically when preparing a release. A branch is copied to a tag, usually to “tag” a release. Tags should never be committed to.
  • 10. Example Repository Layout /trunk <project files> /branches /1.0.x <project files> /1.1.x <project files> /tags /1.0.1 <project files> /1.0.2 <project files> /1.0.3 <project files> /1.1.0 <project files>
  • 11. Advanced Topics Merging branches Vendor branches Keyword substitution ( svn:keywords ) End-of-line character ( svn:eol-style ) Externals definitions ( svn:externals ) Ignore unversioned items ( svn:ignore ) Read the Version Control with Subversion book! It's freely available online and a very well written resource.