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
                            ...
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 f...
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 f...
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/ahnmy...
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.co...
Credits, Attribution
●   http://www.flickr.com/photos/charlieferrari/49323751/sizes/o/

●   http://www.flickr.com/photos/n...
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
Git Basics Workshop Summer of Tech 2010
Git Basics Workshop Summer of Tech 2010
Git Basics Workshop Summer of Tech 2010
Git Basics Workshop Summer of Tech 2010
Upcoming SlideShare
Loading in...5
×

Git Basics Workshop Summer of Tech 2010

616

Published on

Presentation about version control and Git. Workshop exercises at http://github.com/kuahyeow/git-workshop

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
616
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
6
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Git Basics Workshop Summer of Tech 2010"

  1. 1. Code Management: Git
  2. 2. Thong Kuah <Thong.Kuah @ gmail.com>
  3. 3. A Coders Carol presents
  4. 4. Crash Dummy Coding http://www.flickr.com/photos/bugbbq/3853099883/sizes/l/
  5. 5. New version
  6. 6. Here's another change And another change
  7. 7. I prefer the first one
  8. 8. http://www.flickr.com/photos/jemimagibbons/3973603289/
  9. 9. Hey! Success! http://www.flickr.com/photos/brajeshwar/378641553/
  10. 10. Teamwork ? http://www.flickr.com/photos/ivanwalsh/3924222303/
  11. 11. cat_generator.sh
  12. 12. That's mine! Mine! http://www.flickr.com/photos/9588236@N02/1454642584/sizes/l/
  13. 13. I know! cat_generator.bak cat_generator.backup_file cat_gen.do_not_delete cat_generator.alice.1 cat_generator.bob.2
  14. 14. N^2 http://www.flickr.com/photos/seeminglee/2065927225/
  15. 15. Marty McFly http://commons.wikimedia.org/wiki/File:BTTFTimelines.png
  16. 16. http://www.flickr.com/photos/flying_cloud/2667225198/sizes/l/
  17. 17. http://www.flickr.com/photos/torley/414120961/sizes/o/
  18. 18. Fix it. http://commons.wikimedia.org/wiki/File:Software_spanner.png
  19. 19. Who dunnit? http://www.flickr.com/photos/editor/3577065653/
  20. 20. Where's the problem? http://www.flickr.com/photos/silvery/2414538926/
  21. 21. Re-occurences
  22. 22. http://www.flickr.com/photos/tveskov/3387394098/sizes/o/
  23. 23. So, what do we need ?
  24. 24. http://www.flickr.com/photos/mattwright/1787856/sizes/l/
  25. 25. http://www.flickr.com/photos/clintjcl/2784231777/sizes/o/
  26. 26. http://commons.wikimedia.org/wiki/File:Arrows-orphan.svg
  27. 27. Version Control
  28. 28. Version Control ● Storage ● Keeps multiple versions ● Handles changes from multiple sources
  29. 29. Experiments Work with others Run multiple versions Deploy to production http://en.wikipedia.org/wiki/File:Revision_controlled_project_visualization-2010-24-02.svg
  30. 30. Version Control Basics
  31. 31. Basics ●You get code ●You change code ●You share your changes
  32. 32. Basics ●You checkout ●You change code ●You commit
  33. 33. Basics ● You checkout
  34. 34. Checkout http://betterexplained.com/articles/a-visual-guide-to-version-control/
  35. 35. Basics ●You checkout ●You change code
  36. 36. Change code http://betterexplained.com/articles/a-visual-guide-to-version-control/ ...change file...
  37. 37. Basics ●You checkout ●You change code ●You commit
  38. 38. Commit http://betterexplained.com/articles/a-visual-guide-to-version-control/
  39. 39. Again?
  40. 40. Checkout http://betterexplained.com/articles/a-visual-guide-to-version-control/
  41. 41. Change code http://betterexplained.com/articles/a-visual-guide-to-version-control/ ...change file...
  42. 42. Commit http://betterexplained.com/articles/a-visual-guide-to-version-control/
  43. 43. Every version is recorded http://betterexplained.com/articles/a-visual-guide-to-version-control/
  44. 44. Every change is recorded http://betterexplained.com/articles/a-visual-guide-to-version-control/
  45. 45. Basics (II) ●Others get your code ●Others change code ●You get new version
  46. 46. Basics (II) ●Others checkout ●Others change code ●You update
  47. 47. Basics (II) ●Others checkout ●Others change code ●You update ●And around it goes
  48. 48. Sharing is good http://www.flickr.com/photos/ryanr/142455033/sizes/o/
  49. 49. The full picture Tools & Practices
  50. 50. Tools ●SVN ●Git ●Mercurial ●etc...
  51. 51. Practice is up to you & your team http://www.flickr.com/photos/st3f4n/3752994778/ http://www.flickr.com/photos/ahnmyrrh/3633346069/
  52. 52. Summary ●Version Control is a must ●Use best practice ●Use good tools ●Version control basics
  53. 53. 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
  54. 54. 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/
  55. 55. Questions? http://www.flickr.com/photos/gattomimmo/318700028/sizes/o/
  56. 56. Git
  57. 57. Git http://progit.org/book/ch1-3.html
  58. 58. Workshop time Ask lots of questions
  59. 59. http://github.com/ kuahyeow/git- workshop
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×