$30 off During Our Annual Pro Sale. View Details »

EE on Git

Trevor Davis
December 06, 2011

EE on Git

A brief presentation about how Viget handles their EE builds with Git. A lot of the presentation was actually walking through the steps of how we do things.

Trevor Davis

December 06, 2011
Tweet

More Decks by Trevor Davis

Other Decks in Technology

Transcript

  1. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    EE ON GIT
    by Trevor Davis at DC EE Meetup on December 6, 2011

    View Slide

  2. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    @trevor_davis
    HI! I’M
    I work as a Front-end Developer at Viget.
    TREVOR DAVIS

    View Slide

  3. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    WHAT WE WILL COVER

    View Slide

  4. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    I. What is Git?
    WHAT WE WILL COVER

    View Slide

  5. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    I. What is Git?
    II. Creating a default EE build
    WHAT WE WILL COVER

    View Slide

  6. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    I. What is Git?
    II. Creating a default EE build
    III. Developing locally
    WHAT WE WILL COVER

    View Slide

  7. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    I. What is Git?
    II. Creating a default EE build
    III. Developing locally
    IV. Deploying
    WHAT WE WILL COVER

    View Slide

  8. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    I. What is Git?
    II. Creating a default EE build
    III. Developing locally
    IV. Deploying
    V. Maintaining a live site
    WHAT WE WILL COVER

    View Slide

  9. WHAT IS GIT?

    View Slide

  10. Wikipedia
    Git is a distributed revision control system with an
    emphasis on speed. Every Git working directory is a
    full-fledged repository with complete history and
    full revision tracking capabilities, not dependent on
    network access or a central server.

    View Slide

  11. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    BASIC CONCEPT

    View Slide

  12. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    ‎ Make changes
    BASIC CONCEPT

    View Slide

  13. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    ‎ Make changes
    ‎ Add and commit
    BASIC CONCEPT

    View Slide

  14. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    ‎ Make changes
    ‎ Add and commit
    ‎ Push
    BASIC CONCEPT

    View Slide

  15. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    ‎ Make changes
    ‎ Add and commit
    ‎ Push
    ‎ Have a beer & enjoy having full revision history
    BASIC CONCEPT

    View Slide

  16. CREATING A DEFAULT
    EE BUILD

    View Slide

  17. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    CREATING A DEFAULT EE BUILD

    View Slide

  18. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    ‎ Private repo on Github
    CREATING A DEFAULT EE BUILD

    View Slide

  19. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    ‎ Private repo on Github
    ‎ Multiple branches (master, plugins, structure)
    CREATING A DEFAULT EE BUILD

    View Slide

  20. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    ‎ Private repo on Github
    ‎ Multiple branches (master, plugins, structure)
    ‎ Templates as files
    CREATING A DEFAULT EE BUILD

    View Slide

  21. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    ‎ Private repo on Github
    ‎ Multiple branches (master, plugins, structure)
    ‎ Templates as files
    ‎ Single config.php
    CREATING A DEFAULT EE BUILD

    View Slide

  22. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    ‎ Private repo on Github
    ‎ Multiple branches (master, plugins, structure)
    ‎ Templates as files
    ‎ Single config.php
    ‎ database.php for each environment
    CREATING A DEFAULT EE BUILD

    View Slide

  23. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    ‎ Private repo on Github
    ‎ Multiple branches (master, plugins, structure)
    ‎ Templates as files
    ‎ Single config.php
    ‎ database.php for each environment
    ‎ Any free time = update, dump, push
    CREATING A DEFAULT EE BUILD

    View Slide

  24. DEVELOPING LOCALLY

    View Slide

  25. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    GETTING STARTED LOCALLY

    View Slide

  26. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    ‎ Clone the repo
    GETTING STARTED LOCALLY

    View Slide

  27. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    ‎ Clone the repo
    ‎ Remove .git files
    GETTING STARTED LOCALLY

    View Slide

  28. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    ‎ Clone the repo
    ‎ Remove .git files
    ‎ Setup new remote
    GETTING STARTED LOCALLY

    View Slide

  29. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    ‎ Clone the repo
    ‎ Remove .git files
    ‎ Setup new remote
    ‎ Create db
    GETTING STARTED LOCALLY

    View Slide

  30. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    ‎ Clone the repo
    ‎ Remove .git files
    ‎ Setup new remote
    ‎ Create db
    ‎ rake setup
    GETTING STARTED LOCALLY

    View Slide

  31. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    ‎ Clone the repo
    ‎ Remove .git files
    ‎ Setup new remote
    ‎ Create db
    ‎ rake setup
    ‎ Relative upload locations
    GETTING STARTED LOCALLY

    View Slide

  32. DEPLOYING

    View Slide

  33. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    DEPLOYING

    View Slide

  34. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    ‎ SSH
    DEPLOYING

    View Slide

  35. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    ‎ SSH
    ‎ Push/pull
    DEPLOYING

    View Slide

  36. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    ‎ SSH
    ‎ Push/pull
    ‎ Rake/PHP tasks
    DEPLOYING

    View Slide

  37. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    ‎ SSH
    ‎ Push/pull
    ‎ Rake/PHP tasks
    ‎ Capistrano
    DEPLOYING

    View Slide

  38. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    ‎ SSH
    ‎ Push/pull
    ‎ Rake/PHP tasks
    ‎ Capistrano
    ‎ Beanstalk
    DEPLOYING

    View Slide

  39. MAINTAINING A
    LIVE SITE

    View Slide

  40. flickr.com/photos/thelivelygirl/
    CREDITS
    THE DB

    View Slide

  41. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    MAINTAINING THE DB

    View Slide

  42. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    ‎ Make structural changes on the live site
    MAINTAINING THE DB

    View Slide

  43. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    ‎ Make structural changes on the live site
    ‎ As long as they aren't destructive
    MAINTAINING THE DB

    View Slide

  44. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    ‎ Make structural changes on the live site
    ‎ As long as they aren't destructive
    ‎ Export DB
    MAINTAINING THE DB

    View Slide

  45. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    ‎ Make structural changes on the live site
    ‎ As long as they aren't destructive
    ‎ Export DB
    ‎ Commit and push
    MAINTAINING THE DB

    View Slide

  46. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    ‎ Make structural changes on the live site
    ‎ As long as they aren't destructive
    ‎ Export DB
    ‎ Commit and push
    ‎ Pull changes locally
    MAINTAINING THE DB

    View Slide

  47. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    ‎ Make structural changes on the live site
    ‎ As long as they aren't destructive
    ‎ Export DB
    ‎ Commit and push
    ‎ Pull changes locally
    ‎ Import DB
    MAINTAINING THE DB

    View Slide

  48. arrestedstills.tumblr.com
    CREDITS
    LET'S TRY OUR
    HAND AT THIS

    View Slide

  49. © Viget Labs, LLC • This presentation is CONFIDENTIAL and should not be shared without permission.
    web: viget.com | trevordavis.net
    email: [email protected]
    twitter: @trevor_davis
    Thanks!
    Let’s Connect

    View Slide