Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Git and Github: version control for the 21st century

Wendy Liu
October 22, 2013

Git and Github: version control for the 21st century

Presented at PyLadies Montreal.

Wendy Liu

October 22, 2013
Tweet

More Decks by Wendy Liu

Other Decks in Programming

Transcript

  1. PyLadies Montréal :: October 22, 2013
    version control for the 21st century
    and
    :

    View Slide

  2. about me
    - Wendy Liu
    - Math & CS at McGill
    - 2.5 years experience with Git

    View Slide

  3. what is git?

    View Slide

  4. what is git?
    version control system!

    View Slide

  5. svn/perforce: local vs. remote
    comparison to other systems

    View Slide

  6. svn/perforce: local vs. remote
    hg/bzr: faster, more control
    comparison to other systems

    View Slide

  7. svn/perforce: local vs. remote
    hg/bzr: faster, more control
    cvs/rcs: no comparison
    comparison to other systems

    View Slide

  8. backup_dec_1_2012.zip backup_dec_8_2012.zip backup_dec_15_2012.zip
    backup_dec_22_2012.zip backup_dec_29_2012.zip backup_jan_5_2012.zip
    backup_jan_12_2012.zip backup_jan_19_2012.zip backup_jan_26_2012.zip

    View Slide

  9. report_v1.doc report_v2.doc report_v3.doc report_v4.doc

    View Slide

  10. keeps track of changes
    enter git.

    View Slide

  11. keeps track of changes
    extremely flexible
    enter git.

    View Slide

  12. keeps track of changes
    extremely flexible
    developed by linus torvalds
    enter git.

    View Slide

  13. keeps track of changes
    extremely flexible
    developed by linus torvalds
    completely free to use (and open source!)
    enter git.

    View Slide

  14. keeps track of changes
    extremely flexible
    developed by linus torvalds
    completely free to use (and open source!)
    primarily command-line
    enter git.

    View Slide

  15. website
    what is github?

    View Slide

  16. website
    collaborative coding, via git
    what is github?

    View Slide

  17. website
    collaborative coding, via git
    (mostly) free to use
    what is github?

    View Slide

  18. website
    collaborative coding, via git
    (mostly) free to use
    major part of developer ecosystem (esp. OSS)
    what is github?

    View Slide

  19. why git?

    View Slide

  20. why git?
    diffs

    View Slide

  21. why git?
    diffs
    backups

    View Slide

  22. why git?
    diffs
    backups
    collaboration

    View Slide

  23. what git can do for you
    versioning
    easy collaboration
    blame
    tracking down bugs
    safe experimentation
    statistics

    View Slide

  24. what github can do for you
    issue-tracking
    even easier collaboration
    remote backups
    access your files from anywhere
    graphical, easy-to-use UI

    View Slide

  25. now: how git works

    View Slide

  26. repository
    directory on filesystem
    just metadata (changes)
    manual grouping of changes

    View Slide

  27. commit
    group of logically-related changes
    1 or more files (add/delete/modify)

    View Slide

  28. staging index
    CHANGES I WANT IN MY NEXT COMMIT
    ALL THE OTHER CHANGES

    View Slide

  29. git commit -m 'test'
    CHANGES I WANT IN MY NEXT COMMIT
    ALL THE OTHER CHANGES
    a new commit, with message 'test'

    View Slide

  30. CHANGES I WANT IN MY NEXT COMMIT
    ALL THE OTHER CHANGES
    the commit with message 'test'
    (nothing here yet)

    View Slide

  31. git demo

    View Slide

  32. github demo

    View Slide

  33. further resources
    help.github.com
    gitimmersion.com
    git-scm.com/book
    try.github.com
    git man pages (git help, git help [command])
    github.com/Gazler/githug

    View Slide

  34. thanks!
    @dellsystem

    View Slide