SlideShare ist ein Scribd-Unternehmen logo
1 von 28
Downloaden Sie, um offline zu lesen
VersionEEring
Why and how to use version
control with ExpressionEngine.
What is version control?
What is version control?
A program that tracks changes to files and
folders for you.
Also goes by these
names.
Source Control Manager (SCM)
Revision Control System (RCS)
Version Control System (VCS)
That-Thing-That-Just-Saved-My-Ass
Different flavors?
Yup. Each has its own way of tracking your
changes. Here are a few:
  CVS - SVN - Git - Mercurial - Bazaar
  Darcs - Perforce - Fossil - BitKeeper




http://en.wikipedia.org/wiki/List_of_revision_control_software
What kinds of files?
 Text! But also:
  Graphics
  Binary
  WHATEVER YOU WANT.
Why use version control?
Because
this
sucks.
Because
this
sucks.
Because this really,
really sucks.
How to get started.
No servers, nothing fancy -
this is all local, baby. So no excuses.
1. Pick a system.
We’re going with Git.
2. Install it on your
computer.
http://git-scm.com/download
3. Set up a repository
 for your existing project.



$	
  cd	
  ~/Sites/myproject                         Change to the project folder.
$	
  git	
  init                                     Initialize the repository.
$	
  git	
  add	
  .                                 Add everything in the project folder
                                                     to the repository.
$	
  git	
  commit	
  -­‐m	
  "Initial	
  commit."   Make your first commit.
4. Make some changes,
 and commit them.




$	
  git	
  status                                   Tell me what’s changed. (New file!)
$	
  git	
  add	
  index.html                        Add the new file to the repository.
$	
  git	
  status                                   Tell me what’s changed. (Just making
                                                     sure we didn’t miss anything.)
$	
  git	
  commit	
  -­‐m	
  "Added	
  homepage."   Commit the change.
5. Rinse and repeat until
you’re ready to share.
A Basic Workflow
One way to use version control in practice,
with actual live websites.
1. Define your
 environments.
Some popular ones:

- Local
- Development (overkill for team of one)
- Staging (can be same as Development)
- Live
Workflow show ‘n tell
Git and EE, sitting in a tree.
Gotcha #1:
Paths.
Let’s play with settings!
1. Make all paths in the
Control Panel relative.
EE1: Admin > System Preferences > General
Configuration



EE2: Admin > General Configuration
Don’t forget uploaded files
and generated images.
EE1:
Admin > System Preferences > Captcha Preferences
(Each upload destination) Admin >Channel
Administration > File Upload Preferences
(Each channel) Admin > Channel Administration >
Channel Management > Edit Channel Preferences

EE2: Admin > Content Administration > File Upload
Preferences
Gotcha #2:
Environment variables.
Let’s play with config files!
Gotcha #3:
User-generated files.
Keeping filesystems in sync.
Gotcha #4:
Databases.
Pick your poison.
Further Resources
New to version control? Check out Version Control
for Designers: http://hoth.entp.com/output/git_for_designers.html
Not new to version control, but new to Git? Check
out Git Reference: http://gitref.org/
More on the topic of Git and EE:
  http://gititon.masugadesign.com/ <-- A++
  WOULD RECOMMEND
  http://j.mp/ee2multiserver

Weitere ähnliche Inhalte

Was ist angesagt?

آموزش کار با GIT
آموزش کار با GITآموزش کار با GIT

Was ist angesagt? (20)

Version control system & how to use git
Version control system & how to use git Version control system & how to use git
Version control system & how to use git
 
Git
GitGit
Git
 
Git Basics at Rails Underground
Git Basics at Rails UndergroundGit Basics at Rails Underground
Git Basics at Rails Underground
 
Git introduction
Git introductionGit introduction
Git introduction
 
Enjoy privacy on Gitlab
Enjoy privacy on GitlabEnjoy privacy on Gitlab
Enjoy privacy on Gitlab
 
Git Basics (Professionals)
 Git Basics (Professionals) Git Basics (Professionals)
Git Basics (Professionals)
 
Git for the absolute beginners
Git for the absolute beginnersGit for the absolute beginners
Git for the absolute beginners
 
Git: basic to advanced
Git: basic to advancedGit: basic to advanced
Git: basic to advanced
 
Using Git on the Command Line
Using Git on the Command LineUsing Git on the Command Line
Using Git on the Command Line
 
Git - Get Ready To Use It
Git - Get Ready To Use ItGit - Get Ready To Use It
Git - Get Ready To Use It
 
Git for beginner
Git for beginnerGit for beginner
Git for beginner
 
Git tutorial
Git tutorialGit tutorial
Git tutorial
 
GIT | Distributed Version Control System
GIT | Distributed Version Control SystemGIT | Distributed Version Control System
GIT | Distributed Version Control System
 
Hello git
Hello git Hello git
Hello git
 
Git Version Control System
Git Version Control SystemGit Version Control System
Git Version Control System
 
Recovering From Git Mistakes - Nina Zakharenko
Recovering From Git Mistakes - Nina ZakharenkoRecovering From Git Mistakes - Nina Zakharenko
Recovering From Git Mistakes - Nina Zakharenko
 
Git basics for beginners
Git basics for beginnersGit basics for beginners
Git basics for beginners
 
簡單介紹git
簡單介紹git簡單介紹git
簡單介紹git
 
آموزش کار با GIT
آموزش کار با GITآموزش کار با GIT
آموزش کار با GIT
 
Git - The Incomplete Introduction
Git - The Incomplete IntroductionGit - The Incomplete Introduction
Git - The Incomplete Introduction
 

Ähnlich wie VersionEEring

Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...
Simplilearn
 
Git Workshop : Getting Started
Git Workshop : Getting StartedGit Workshop : Getting Started
Git Workshop : Getting Started
Wildan Maulana
 

Ähnlich wie VersionEEring (20)

Intro to git (UT biocomputing 2015)
Intro to git (UT biocomputing 2015)Intro to git (UT biocomputing 2015)
Intro to git (UT biocomputing 2015)
 
git2.ppt
git2.pptgit2.ppt
git2.ppt
 
GIT_Overview.
GIT_Overview.GIT_Overview.
GIT_Overview.
 
Git Init (Introduction to Git)
Git Init (Introduction to Git)Git Init (Introduction to Git)
Git Init (Introduction to Git)
 
Workshop[3ed Apr]-[Git]
Workshop[3ed Apr]-[Git]Workshop[3ed Apr]-[Git]
Workshop[3ed Apr]-[Git]
 
Grokking opensource with github
Grokking opensource with githubGrokking opensource with github
Grokking opensource with github
 
1-Intro to VC & GIT PDF.pptx
1-Intro to VC & GIT PDF.pptx1-Intro to VC & GIT PDF.pptx
1-Intro to VC & GIT PDF.pptx
 
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...
 
Extra bit with git
Extra bit with gitExtra bit with git
Extra bit with git
 
Version control
Version controlVersion control
Version control
 
Presentation on Repository Control System
Presentation on Repository Control SystemPresentation on Repository Control System
Presentation on Repository Control System
 
Git Workshop : Getting Started
Git Workshop : Getting StartedGit Workshop : Getting Started
Git Workshop : Getting Started
 
Advanced Web Development in PHP - Code Versioning and Branching with Git
Advanced Web Development in PHP - Code Versioning and Branching with GitAdvanced Web Development in PHP - Code Versioning and Branching with Git
Advanced Web Development in PHP - Code Versioning and Branching with Git
 
Git github
Git githubGit github
Git github
 
GIT from n00b
GIT from n00bGIT from n00b
GIT from n00b
 
Git training (basic)
Git training (basic)Git training (basic)
Git training (basic)
 
BLUG 2012 Version Control for Notes Developers
BLUG 2012 Version Control for Notes DevelopersBLUG 2012 Version Control for Notes Developers
BLUG 2012 Version Control for Notes Developers
 
Nina Zakharenko - Introduction to Git - Start SLC 2015
Nina Zakharenko - Introduction to Git - Start SLC 2015Nina Zakharenko - Introduction to Git - Start SLC 2015
Nina Zakharenko - Introduction to Git - Start SLC 2015
 
Introduction to GitHub, Open Source and Tech Article
Introduction to GitHub, Open Source and Tech ArticleIntroduction to GitHub, Open Source and Tech Article
Introduction to GitHub, Open Source and Tech Article
 
Git (Sistema Distribuido de Control de Versiones)
Git (Sistema Distribuido de Control de Versiones)Git (Sistema Distribuido de Control de Versiones)
Git (Sistema Distribuido de Control de Versiones)
 

Mehr von Ruthie BenDor (7)

Even Naming This Talk Is Hard
Even Naming This Talk Is HardEven Naming This Talk Is Hard
Even Naming This Talk Is Hard
 
Move Fast And Document Things
Move Fast And Document ThingsMove Fast And Document Things
Move Fast And Document Things
 
Build Your First EE2 Site
Build Your First EE2 SiteBuild Your First EE2 Site
Build Your First EE2 Site
 
Make Your Site SpEEdy
Make Your Site SpEEdyMake Your Site SpEEdy
Make Your Site SpEEdy
 
Add-On Migration Planner for EE 1.x to EE 2.x
Add-On Migration Planner for EE 1.x to EE 2.xAdd-On Migration Planner for EE 1.x to EE 2.x
Add-On Migration Planner for EE 1.x to EE 2.x
 
All About ExpressionEngine 2
All About ExpressionEngine 2All About ExpressionEngine 2
All About ExpressionEngine 2
 
Content Management for the little guy
Content Management for the little guyContent Management for the little guy
Content Management for the little guy
 

Kürzlich hochgeladen

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Kürzlich hochgeladen (20)

A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 

VersionEEring

  • 1. VersionEEring Why and how to use version control with ExpressionEngine.
  • 2. What is version control?
  • 3. What is version control? A program that tracks changes to files and folders for you.
  • 4. Also goes by these names. Source Control Manager (SCM) Revision Control System (RCS) Version Control System (VCS) That-Thing-That-Just-Saved-My-Ass
  • 5. Different flavors? Yup. Each has its own way of tracking your changes. Here are a few: CVS - SVN - Git - Mercurial - Bazaar Darcs - Perforce - Fossil - BitKeeper http://en.wikipedia.org/wiki/List_of_revision_control_software
  • 6. What kinds of files? Text! But also: Graphics Binary WHATEVER YOU WANT.
  • 7. Why use version control?
  • 11. How to get started. No servers, nothing fancy - this is all local, baby. So no excuses.
  • 12. 1. Pick a system. We’re going with Git.
  • 13. 2. Install it on your computer. http://git-scm.com/download
  • 14. 3. Set up a repository for your existing project. $  cd  ~/Sites/myproject Change to the project folder. $  git  init Initialize the repository. $  git  add  . Add everything in the project folder to the repository. $  git  commit  -­‐m  "Initial  commit." Make your first commit.
  • 15. 4. Make some changes, and commit them. $  git  status Tell me what’s changed. (New file!) $  git  add  index.html Add the new file to the repository. $  git  status Tell me what’s changed. (Just making sure we didn’t miss anything.) $  git  commit  -­‐m  "Added  homepage." Commit the change.
  • 16. 5. Rinse and repeat until you’re ready to share.
  • 17. A Basic Workflow One way to use version control in practice, with actual live websites.
  • 18. 1. Define your environments. Some popular ones: - Local - Development (overkill for team of one) - Staging (can be same as Development) - Live
  • 19.
  • 21. Git and EE, sitting in a tree.
  • 23. 1. Make all paths in the Control Panel relative. EE1: Admin > System Preferences > General Configuration EE2: Admin > General Configuration
  • 24. Don’t forget uploaded files and generated images. EE1: Admin > System Preferences > Captcha Preferences (Each upload destination) Admin >Channel Administration > File Upload Preferences (Each channel) Admin > Channel Administration > Channel Management > Edit Channel Preferences EE2: Admin > Content Administration > File Upload Preferences
  • 25. Gotcha #2: Environment variables. Let’s play with config files!
  • 28. Further Resources New to version control? Check out Version Control for Designers: http://hoth.entp.com/output/git_for_designers.html Not new to version control, but new to Git? Check out Git Reference: http://gitref.org/ More on the topic of Git and EE: http://gititon.masugadesign.com/ <-- A++ WOULD RECOMMEND http://j.mp/ee2multiserver