Intro To Version Control

  • 512 views
Uploaded on

Provides an absolute beginner\'s guide to how version control works, why you should switch and how to get started. Note that this presentation was for Design 4 Drupal, so it is angled towards Drupal …

Provides an absolute beginner\'s guide to how version control works, why you should switch and how to get started. Note that this presentation was for Design 4 Drupal, so it is angled towards Drupal themers.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
512
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
11
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. An Introduction to Using Version Control with Drupal Kathleen Murtagh Design 4 Drupal -- June 14, 2009
  • 2. Why use Version Control?
    • Constant backup of your project
    • 3. Full history of your project's development
    • 4. Reuse code that was previously removed
    • 5. Remove changes that caused bugs
    • 6. Enable collaborative development
    • 7. Easier deployment to production
  • 8. Typical Workflow
    • Make your changes
    • 9. Review your edits
    • 10. Commit
    Rinse and Repeat!
  • 11. Commits are Patches Multiple developers can work on the same file
  • 12. View Your Commit History
    • See your coworker's work
    • 13. Understand the rational behind changes
    • 14. Recapture a block of code that was removed
  • 15. Change Versions of your Code (Don't be scared of this command line screen shot. I'll show you the graphical apps later)
    • Test previous versions of your project
    • 16. Find the commit that caused a bug
  • 17. Remove Commits
    • Find the commit that caused a bug
    • 18. Revert the commit in whole or in part
    • 19. ???
    • 20. Profit!
    ...
  • 21. Branching and Tagging Branches
    • Fork code to allow independent development
    • 22. A Working branch for significant feature changes
    • 23. Create new or different versions of a project
  • 24. Branching and Tagging Tags
    • Snapshots that are not intended to be modified
    • 25. Record significant moments
      • Releases, Stable versions, Testing results, etc
  • 26. The Version Control Systems Centralized Repository
    • SVN (Subversion)
    • 27. CVS (Concurrent Versions System)
    Notable Features
    • All branches and tags are shared
    • 28. Linear development
  • 29. The Version Control Systems Decentralized Repository Notable Features
    • Offline development
    • 31. Enables shared and personal branches and tags
    • 32. Sophisticated merging
    • 33. More complicated
  • 34. Front-end Tools for Subversion
    • Windows
      • TortoiseSVN
    • Mac
      • Versions
    • Cross platform
    It would be advantageous to your career as a web developer to learn the command line, though!
  • 36. TortoiseSVN (Windows)
  • 37. Versions (Mac)
  • 38. SmartSVN
  • 39. RapidSVN
  • 40. Start Using Subversion Start with version controlling your theme Think about the database problem later
  • 41. Set Up Subversion
    • Set up a repository
      • Use a service to manage your repo
      • 42. Setup a repo with your web host
      • 43. Install Subversion on your server
    • Install the SVN client
      • If you develop on a remote server , install it there
        • Your remote server may already have it installed!
      • If you develop locally , install it on your computer
  • 44. Start Using Your Repository
    • Experiment with interface options to find what you like the best
    • 45. Import your theme into the repository
    • 46. Checkout your theme into the themes directory
    • 47. Start making changes and committing
  • 48. Keep Learning.