SlideShare a Scribd company logo
1 of 63
Download to read offline
Code
Management:
    Git
Thong Kuah
<Thong.Kuah @ gmail.com>
A Coders Carol
   presents
Crash Dummy Coding




              http://www.flickr.com/photos/bugbbq/3853099883/sizes/l/
New version
Here's another change




   And another change
I prefer the first one
http://www.flickr.com/photos/jemimagibbons/3973603289/
Hey! Success!




           http://www.flickr.com/photos/brajeshwar/378641553/
Teamwork ?




         http://www.flickr.com/photos/ivanwalsh/3924222303/
cat_generator.sh
That's mine! Mine!




            http://www.flickr.com/photos/9588236@N02/1454642584/sizes/l/
I know!

cat_generator.bak
cat_generator.backup_file
cat_gen.do_not_delete
cat_generator.alice.1
cat_generator.bob.2
N^2




      http://www.flickr.com/photos/seeminglee/2065927225/
Marty McFly




         http://commons.wikimedia.org/wiki/File:BTTFTimelines.png
http://www.flickr.com/photos/flying_cloud/2667225198/sizes/l/
http://www.flickr.com/photos/torley/414120961/sizes/o/
Fix it.




          http://commons.wikimedia.org/wiki/File:Software_spanner.png
Who dunnit?
       http://www.flickr.com/photos/editor/3577065653/
Where's the problem?




                http://www.flickr.com/photos/silvery/2414538926/
Re-occurences
http://www.flickr.com/photos/tveskov/3387394098/sizes/o/
So, what do we
    need ?
http://www.flickr.com/photos/mattwright/1787856/sizes/l/
http://www.flickr.com/photos/clintjcl/2784231777/sizes/o/
http://commons.wikimedia.org/wiki/File:Arrows-orphan.svg
Version Control
Version Control

● Storage
● Keeps multiple

  versions
● Handles changes from

  multiple sources
Experiments


Work with others



                                               Run multiple
                                               versions

Deploy to
production

                   http://en.wikipedia.org/wiki/File:Revision_controlled_project_visualization-2010-24-02.svg
Version Control




 Basics
Basics

●You get code
●You change code

●You share your

 changes
Basics

●You checkout
●You change code

●You commit
Basics

●   You checkout
Checkout




       http://betterexplained.com/articles/a-visual-guide-to-version-control/
Basics

●You checkout
●You change code
Change code




                      http://betterexplained.com/articles/a-visual-guide-to-version-control/
  ...change file...
Basics

●You checkout
●You change code

●You commit
Commit




         http://betterexplained.com/articles/a-visual-guide-to-version-control/
Again?
Checkout




       http://betterexplained.com/articles/a-visual-guide-to-version-control/
Change code




                      http://betterexplained.com/articles/a-visual-guide-to-version-control/
  ...change file...
Commit




         http://betterexplained.com/articles/a-visual-guide-to-version-control/
Every version is recorded




                http://betterexplained.com/articles/a-visual-guide-to-version-control/
Every change is recorded




               http://betterexplained.com/articles/a-visual-guide-to-version-control/
Basics (II)

●Others get your code
●Others change code

●You get new version
Basics (II)

●Others checkout
●Others change code

●You update
Basics (II)

●Others checkout
●Others change code

●You update

●And around it goes
Sharing is good




             http://www.flickr.com/photos/ryanr/142455033/sizes/o/
The full picture



  Tools
    &
Practices
Tools

●SVN
●Git

●Mercurial

●etc...
Practice is up to you & your team




http://www.flickr.com/photos/st3f4n/3752994778/   http://www.flickr.com/photos/ahnmyrrh/3633346069/
Summary

●Version Control is a must
●Use best practice

●Use good tools

●Version control basics
Further Information
●   http://gitref.org/index.html
●   http://progit.org/
●   SVN Red Book
●   http://betterexplained.com/articles/a-visual-
    guide-to-version-control/
●   http://www.swc.scipy.org/lec/version.html
Credits, Attribution
●   http://www.flickr.com/photos/charlieferrari/49323751/sizes/o/

●   http://www.flickr.com/photos/nickwheeleroz/2475011402/sizes/l/

●   http://www.flickr.com/photos/herzogbr/2123789106/sizes/l/

●   http://www.flickr.com/photos/7506006@N07/513417996/in/set-72157600264508078/

●   http://www.flickr.com/photos/7506006@N07/513453021/

●   http://www.flickr.com/photos/mattwright/1787856/sizes/l/

●   http://www.flickr.com/photos/ryanr/142455033/sizes/o/

●   http://www.flickr.com/photos/rachelrusinski/533767098/sizes/o/

●   http://commons.wikimedia.org

●   http://www.flickr.com/photos/missmirr/529688823/sizes/o/
Questions?




             http://www.flickr.com/photos/gattomimmo/318700028/sizes/o/
Git
Git




      http://progit.org/book/ch1-3.html
Workshop time
Ask lots of questions
http://github.com/
  kuahyeow/git-
    workshop

More Related Content

Viewers also liked

Code Management (Version Control)
Code Management (Version Control)Code Management (Version Control)
Code Management (Version Control)Y. Thong Kuah
 
Leaders As Teachers Institute
Leaders As Teachers InstituteLeaders As Teachers Institute
Leaders As Teachers InstituteCorpU
 
Rails 3 : Cool New Things
Rails 3 : Cool New ThingsRails 3 : Cool New Things
Rails 3 : Cool New ThingsY. Thong Kuah
 
Git Basics at Rails Underground
Git Basics at Rails UndergroundGit Basics at Rails Underground
Git Basics at Rails UndergroundAriejan de Vroom
 

Viewers also liked (6)

Code Management (Version Control)
Code Management (Version Control)Code Management (Version Control)
Code Management (Version Control)
 
Leaders As Teachers Institute
Leaders As Teachers InstituteLeaders As Teachers Institute
Leaders As Teachers Institute
 
Rails 3 : Cool New Things
Rails 3 : Cool New ThingsRails 3 : Cool New Things
Rails 3 : Cool New Things
 
Code Management
Code ManagementCode Management
Code Management
 
Git Basics at Rails Underground
Git Basics at Rails UndergroundGit Basics at Rails Underground
Git Basics at Rails Underground
 
Git basic
Git basicGit basic
Git basic
 

Similar to Git Basics Workshop Summer of Tech 2010

There's a Module for That, MIMA Summit 2010
There's a Module for That, MIMA Summit 2010There's a Module for That, MIMA Summit 2010
There's a Module for That, MIMA Summit 2010Emma Jane Hogbin Westby
 
Have you been stalking your servers?
Have you been stalking your servers?Have you been stalking your servers?
Have you been stalking your servers?Martin Marji Cermak
 
Shining a light on performance (js meetup)
Shining a light on performance (js meetup)Shining a light on performance (js meetup)
Shining a light on performance (js meetup)Yoav Niran
 
Software Craftsmanship - 1 Meeting
Software Craftsmanship - 1 MeetingSoftware Craftsmanship - 1 Meeting
Software Craftsmanship - 1 MeetingUri Lavi
 
The Evil Tester's Guide to HTTP proxies Tutorial
The Evil Tester's Guide to HTTP proxies TutorialThe Evil Tester's Guide to HTTP proxies Tutorial
The Evil Tester's Guide to HTTP proxies TutorialAlan Richardson
 
Moodle Series #2 - Learn Local - Administering your Moodle Course
Moodle Series #2 - Learn Local - Administering your Moodle CourseMoodle Series #2 - Learn Local - Administering your Moodle Course
Moodle Series #2 - Learn Local - Administering your Moodle CourseYum Studio
 
Have you been stalking your servers?
Have you been stalking your servers?Have you been stalking your servers?
Have you been stalking your servers?morpht
 
Introduction à l’intégration continue avec Jenkins
Introduction à l’intégration continue avec JenkinsIntroduction à l’intégration continue avec Jenkins
Introduction à l’intégration continue avec JenkinsEric Hogue
 
Continuous Testing in Vegas
Continuous Testing in VegasContinuous Testing in Vegas
Continuous Testing in Vegasjaredrrichardson
 
Debugging Effectively - php[world] 2015
Debugging Effectively - php[world] 2015Debugging Effectively - php[world] 2015
Debugging Effectively - php[world] 2015Colin O'Dell
 
Agile Gurugram 2016 | Conference | Why your Agile Project will fail? Softwar...
Agile Gurugram 2016 | Conference |  Why your Agile Project will fail? Softwar...Agile Gurugram 2016 | Conference |  Why your Agile Project will fail? Softwar...
Agile Gurugram 2016 | Conference | Why your Agile Project will fail? Softwar...AgileNetwork
 
You're doing it wrong! Git it right!
You're doing it wrong! Git it right!You're doing it wrong! Git it right!
You're doing it wrong! Git it right!Cory Webb
 
11 tools for your PHP devops stack
11 tools for your PHP devops stack11 tools for your PHP devops stack
11 tools for your PHP devops stackKris Buytaert
 
Hacking And Hosting Hot Potatoes
Hacking And Hosting Hot PotatoesHacking And Hosting Hot Potatoes
Hacking And Hosting Hot PotatoesDerek Moore
 
DevOps Taiwan meetup #19
DevOps Taiwan meetup #19DevOps Taiwan meetup #19
DevOps Taiwan meetup #19Len Chang
 
The usage and dependency resolving mechanism of go module
The usage and dependency resolving mechanism of go moduleThe usage and dependency resolving mechanism of go module
The usage and dependency resolving mechanism of go moduleLung-Hsuan Hung
 
Use Scrum and Continuous Delivery to innovate like crazy!
Use Scrum and Continuous Delivery to innovate like crazy!Use Scrum and Continuous Delivery to innovate like crazy!
Use Scrum and Continuous Delivery to innovate like crazy!Peter Gfader
 
Behaviour-Driven Development: escrevendo especificações ágeis
Behaviour-Driven Development: escrevendo especificações ágeisBehaviour-Driven Development: escrevendo especificações ágeis
Behaviour-Driven Development: escrevendo especificações ágeisHugo Lopes Tavares
 
7 tools for your devops stack
7 tools for your devops stack7 tools for your devops stack
7 tools for your devops stackKris Buytaert
 

Similar to Git Basics Workshop Summer of Tech 2010 (20)

There's a Module for That, MIMA Summit 2010
There's a Module for That, MIMA Summit 2010There's a Module for That, MIMA Summit 2010
There's a Module for That, MIMA Summit 2010
 
Have you been stalking your servers?
Have you been stalking your servers?Have you been stalking your servers?
Have you been stalking your servers?
 
Shining a light on performance (js meetup)
Shining a light on performance (js meetup)Shining a light on performance (js meetup)
Shining a light on performance (js meetup)
 
Silos are for farmers
Silos are for farmersSilos are for farmers
Silos are for farmers
 
Software Craftsmanship - 1 Meeting
Software Craftsmanship - 1 MeetingSoftware Craftsmanship - 1 Meeting
Software Craftsmanship - 1 Meeting
 
The Evil Tester's Guide to HTTP proxies Tutorial
The Evil Tester's Guide to HTTP proxies TutorialThe Evil Tester's Guide to HTTP proxies Tutorial
The Evil Tester's Guide to HTTP proxies Tutorial
 
Moodle Series #2 - Learn Local - Administering your Moodle Course
Moodle Series #2 - Learn Local - Administering your Moodle CourseMoodle Series #2 - Learn Local - Administering your Moodle Course
Moodle Series #2 - Learn Local - Administering your Moodle Course
 
Have you been stalking your servers?
Have you been stalking your servers?Have you been stalking your servers?
Have you been stalking your servers?
 
Introduction à l’intégration continue avec Jenkins
Introduction à l’intégration continue avec JenkinsIntroduction à l’intégration continue avec Jenkins
Introduction à l’intégration continue avec Jenkins
 
Continuous Testing in Vegas
Continuous Testing in VegasContinuous Testing in Vegas
Continuous Testing in Vegas
 
Debugging Effectively - php[world] 2015
Debugging Effectively - php[world] 2015Debugging Effectively - php[world] 2015
Debugging Effectively - php[world] 2015
 
Agile Gurugram 2016 | Conference | Why your Agile Project will fail? Softwar...
Agile Gurugram 2016 | Conference |  Why your Agile Project will fail? Softwar...Agile Gurugram 2016 | Conference |  Why your Agile Project will fail? Softwar...
Agile Gurugram 2016 | Conference | Why your Agile Project will fail? Softwar...
 
You're doing it wrong! Git it right!
You're doing it wrong! Git it right!You're doing it wrong! Git it right!
You're doing it wrong! Git it right!
 
11 tools for your PHP devops stack
11 tools for your PHP devops stack11 tools for your PHP devops stack
11 tools for your PHP devops stack
 
Hacking And Hosting Hot Potatoes
Hacking And Hosting Hot PotatoesHacking And Hosting Hot Potatoes
Hacking And Hosting Hot Potatoes
 
DevOps Taiwan meetup #19
DevOps Taiwan meetup #19DevOps Taiwan meetup #19
DevOps Taiwan meetup #19
 
The usage and dependency resolving mechanism of go module
The usage and dependency resolving mechanism of go moduleThe usage and dependency resolving mechanism of go module
The usage and dependency resolving mechanism of go module
 
Use Scrum and Continuous Delivery to innovate like crazy!
Use Scrum and Continuous Delivery to innovate like crazy!Use Scrum and Continuous Delivery to innovate like crazy!
Use Scrum and Continuous Delivery to innovate like crazy!
 
Behaviour-Driven Development: escrevendo especificações ágeis
Behaviour-Driven Development: escrevendo especificações ágeisBehaviour-Driven Development: escrevendo especificações ágeis
Behaviour-Driven Development: escrevendo especificações ágeis
 
7 tools for your devops stack
7 tools for your devops stack7 tools for your devops stack
7 tools for your devops stack
 

Recently uploaded

Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsHyundai Motor Group
 

Recently uploaded (20)

Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
 

Git Basics Workshop Summer of Tech 2010