• Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
68
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
2
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. GIT introduction @theAgileMATT
  • 2. @theAgileMATT
  • 3. @theAgileMATT
  • 4. @theAgileMATT
  • 5. @theAgileMATT
  • 6. Key - Value @theAgileMATT
  • 7. Branching is not the issue, the merging is... Linus Torvalds @theAgileMATT
  • 8. @theAgileMATT
  • 9. @theAgileMATT
  • 10. @theAgileMATT
  • 11. @theAgileMATT
  • 12. @theAgileMATT
  • 13. @theAgileMATT
  • 14. discover track Rename @theAgileMATT
  • 15. GIT hash @theAgileMATT
  • 16. GIT refs @theAgileMATT
  • 17. @theAgileMATT
  • 18. @theAgileMATT
  • 19. @theAgileMATT
  • 20. @theAgileMATT
  • 21. @theAgileMATT
  • 22. @theAgileMATT
  • 23. History Manipulation @theAgileMATT
  • 24. Mieszko I B. Chrobry K. Odnowiciel Mieszko II @theAgileMATT
  • 25. B. Chrobry Mieszko I K. Odnowiciel Mieszko II @theAgileMATT
  • 26. B. Chrobry Mieszko I Mieszko II K. Odnowiciel @theAgileMATT
  • 27. Mieszko I Mieszko II K. B. Chrobry @theAgileMATT Odnowiciel
  • 28. cherry-picking @theAgileMATT
  • 29. @theAgileMATT
  • 30. @theAgileMATT
  • 31. @theAgileMATT
  • 32. git merge @theAgileMATT
  • 33. @theAgileMATT
  • 34. @theAgileMATT
  • 35. @theAgileMATT
  • 36. rebase @theAgileMATT
  • 37. @theAgileMATT
  • 38. @theAgileMATT
  • 39. @theAgileMATT
  • 40. @theAgileMATT
  • 41. @theAgileMATT
  • 42. rebase vs. merge @theAgileMATT
  • 43. @theAgileMATT
  • 44. squash @theAgileMATT
  • 45. Remove sensitive data FILENAME=”secret.txt”! ! git filter-branch! --index-filter 'git rm --cached --ignore-unmatch $FILENAME'! --prune-empty --! --all! ! ! ! http://help.github.com/remove-sensitive-data/ @theAgileMATT
  • 46. Change user or email git filter-branch --commit-filter '! ! ! ! ! ! if [ "$GIT_COMMITTER_NAME" = "flastname" ]; then! GIT_COMMITTER_NAME="Firstname Lastname";! GIT_AUTHOR_NAME="Firstname Lastname";! GIT_COMMITTER_EMAIL="firstname.lastname@allegro.pl";! GIT_AUTHOR_EMAIL="firstname.lastname@allegro.pl";! git commit-tree "$@";! else! git commit-tree "$@";! fi' HEAD @theAgileMATT
  • 47. pushed repo rebase @theAgileMATT
  • 48. GIT tools @theAgileMATT
  • 49. @theAgileMATT
  • 50. Workflow @theAgileMATT
  • 51. git pull --rebase @theAgileMATT
  • 52. git add @theAgileMATT
  • 53. git rm @theAgileMATT
  • 54. git mv @theAgileMATT
  • 55. git commit @theAgileMATT
  • 56. @theAgileMATT
  • 57. git push @theAgileMATT
  • 58. @theAgileMATT
  • 59. git log @theAgileMATT
  • 60. git log --graph @theAgileMATT
  • 61. git status @theAgileMATT
  • 62. git stash @theAgileMATT
  • 63. git diff @theAgileMATT
  • 64. git reset @theAgileMATT
  • 65. git bisect and git blame @theAgileMATT
  • 66. GIT gui tools • • • • gitk! sourcetree! msysgit! tortoiseGIT @theAgileMATT
  • 67. Strategies @theAgileMATT
  • 68. Central Repository Model @theAgileMATT
  • 69. @theAgileMATT
  • 70. Cherry-picking Model @theAgileMATT
  • 71. @theAgileMATT
  • 72. @theAgileMATT
  • 73. @theAgileMATT
  • 74. @theAgileMATT
  • 75. @theAgileMATT
  • 76. @theAgileMATT
  • 77. Army Model @theAgileMATT
  • 78. @theAgileMATT
  • 79. @theAgileMATT
  • 80. @theAgileMATT
  • 81. @theAgileMATT
  • 82. @theAgileMATT
  • 83. Usecase @theAgileMATT
  • 84. allegro release @theAgileMATT
  • 85. allegro test env @theAgileMATT
  • 86. pull request @theAgileMATT
  • 87. Conclusion @theAgileMATT
  • 88. Why DVCS? @theAgileMATT
  • 89. Why GIT? @theAgileMATT
  • 90. @theAgileMATT
  • 91. @theAgileMATT
  • 92. @theAgileMATT
  • 93. Ask me about your problem :} @theAgileMATT