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

Github in practice

Github in practice

Talk gave in the Mistis Seminar

Jaime Arias Almeida

February 06, 2017
Tweet

More Decks by Jaime Arias Almeida

Other Decks in Technology

Transcript

  1. GITHUB IN PRACTICE
    Jaime Arias
    Inria Grenoble Rhône-Alpes
    February 2017
    * Figures in this presentation are inspired by the books listed at the end.
    1

    View Slide

  2. WHAT IS GIT?
    Version control system (VCS) for tracking changes in
    computer files and coordinating work on those files among
    multiple people
    2

    View Slide

  3. GITHUB, GITLAB AND COMPANY

    Web-based git repository.
    Provides access control and collaboration features (i.e., bug
    tracking, wiki, task management).
    3

    View Slide

  4. IT'S TIME TO TAKE THE BULL BY THE
    HORNS !
    4

    View Slide

  5. BASIC CONFIGURATION
    5

    View Slide

  6. INITIALIZATION OF AN EMPTY LOCAL REPOSITORY
    6

    View Slide

  7. ADDING CHANGES TO THE REPOSITORY
    7

    View Slide

  8. ADDING CHANGES TO THE REPOSITORY
    8

    View Slide

  9. ADDING CHANGES TO THE REPOSITORY
    9

    View Slide

  10. ADDING CHANGES TO THE REPOSITORY
    10

    View Slide

  11. ADDING CHANGES TO THE REPOSITORY
    11

    View Slide

  12. ADDING CHANGES TO THE REPOSITORY
    12

    View Slide

  13. ADDING CHANGES TO THE REPOSITORY
    13

    View Slide

  14. ADDING CHANGES TO THE REPOSITORY
    14

    View Slide

  15. SHOWING CHANGES AND HISTORY
    15

    View Slide

  16. DIFF & LOG
    The diff command shows the changes that have been made to
    the tracked files in the repository since the last commit.
    The log command shows the commits that have been made so
    far.
    16

    View Slide

  17. DIFF & LOG
    17

    View Slide

  18. BRANCHING IN GIT
    18

    View Slide

  19. BRANCHING IN GIT
    19

    View Slide

  20. BRANCHING IN GIT
    20

    View Slide

  21. BRANCHING IN GIT
    21

    View Slide

  22. BRANCHING IN GIT
    22

    View Slide

  23. INTEGRATE CHANGES
    23

    View Slide

  24. MERGING
    24

    View Slide

  25. MERGING
    25

    View Slide

  26. WHEN SOMETHING IS NOT GOING WELL ...
    26

    View Slide

  27. CONFLICT
    27

    View Slide

  28. CONFLICT
    28

    View Slide

  29. CONFLICT
    29

    View Slide

  30. CONFLICT
    30

    View Slide

  31. CONFLICT
    31

    View Slide

  32. UNDO GIT ADD
    If you've just asked Git to track a new file, you can undo the
    operation by running the reset command.
    32

    View Slide

  33. UNDO GIT COMMIT
    33

    View Slide

  34. UNDO GIT COMMIT
    34

    View Slide

  35. GETTING STARTED IN A TEAM
    35

    View Slide

  36. WORKING ON AN EXISTING PROJECT
    36

    View Slide

  37. WORKING ON AN EXISTING PROJECT
    37

    View Slide

  38. WORKING ON AN EXISTING PROJECT
    38

    View Slide

  39. COLLABORATION WORKFLOW
    39

    View Slide

  40. UPLOAD LOCAL CHANGES TO THE REMOTE SERVER
    40

    View Slide

  41. UPLOAD LOCAL CHANGES TO THE REMOTE SERVER
    41

    View Slide

  42. UP-TO-DATE ABOUT REMOTE CHANGES
    42

    View Slide

  43. INTEGRATE REMOTE CHANGES
    43

    View Slide

  44. PUBLISH A LOCAL BRANCH
    44

    View Slide

  45. PUBLISH A LOCAL BRANCH
    45

    View Slide

  46. TRACK A REMOTE BRANCH
    46

    View Slide

  47. ADVANCED TIPS
    47

    View Slide

  48. IGNORING FILES
    For a useful starting point of files to ignore, check out
    gitignore.io
    48

    View Slide

  49. FIXING UP THE MOST RECENT COMMIT
    49

    View Slide

  50. STASHING YOUR WORK
    The stash command takes your uncommited changes and
    saves them away for later use.
    50

    View Slide

  51. THANK YOU FOR YOUR ATTENTION !
    51

    View Slide

  52. FURTHER READING
    Shaumik Daityari. Jump Start Git: Take Control of Your Code and
    Assets. 2015
    Emma Jane Hogbin Westby. Git for Teams: A User-Centered
    Approach to Creatin Efficient Workflows in Git. 2015
    Mike McQuaid. Git in Practice: Includes 66 Techniques. 2015
    Git Documentation: https://git-scm.com
    52

    View Slide