a practical 30m intro to git vcs

Post on 03-Aug-2015

67 Views

Category:

Engineering

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

* without warranty* without warranty

a 30 MIN* workshop

to Git VCSa 30 MIN* workshop

to Git VCS

Hi !I am Olivier Garcia

○ software architect at Infrabel

○ co-founder of catchy.io

○ proud owner of lol.cat & swag.gg domains

VCS

○ RCS (Revision Control System) et diff : 1982

○ SCCS (Source Code Control System) : 1986-89

○ CVS (Concurrent Versions System) : 1990

○ SVN (Apache Subversion) : 2000

Git

○ Created by Linus Torvalds in ‘05, replacing Bitkeeper

○ Meant to deal with patch acceptation workflow

○ May ‘13, 36% use Git as main VCS (src: Eclipse Foundation)

○ ‘15 Github have 9M users

Git

○ Created by Linus Torvalds in ‘05, replacing Bitkeeper

○ Meant to deal with patch acceptation workflow

○ May ‘13, 36% use Git as main VCS (src: Eclipse Foundation)

○ ‘15 Github have 9M users

All guys in animatedGIFs(are/were) Githubers

Workshop, part 1 !

git initgit addgit statusgit commitgit log

Fun fact about Linus Torvald

Linus addressing NVidia

Linus addressing a co-worker

Mauro, SHUT THE FUCK UP!...How long have you been a maintainer? And you *still* haven't learnt the first rule of kernel maintenance?…Fix your approach to kernel programming.

… addressing another one

There aren't enough swear-words in the English language, so now I'll have to call you perkeleen vittupää* just to express my disgust and frustration with this crap.

* Seems to translate roughly to sonofabitch

Workshop, part 2 !

git configgit clonegit branchgit taggit checkoutgit push

Coffee time

Workshop, part 3 !

git add -pgit checkout -pgit checkout -git reset HEAD~3git clean

Everything in one place

No need of an internet connection to compare with trunk master

Git has efficient storage○ delta○ compression

Git can be big (e.g. Facebook’s)

Merge & Rebase

Both are meant to take the changes from one branch into another.

The situation

Merge

Rebase

Workshop, part 4 !

git mergegit rebase

Collaboration

○ Feature workflowMaster + Feature branches + Pull requests

○ Gitflow workflowMaster + Develop + Release + Feature branches

○ Forking workflowSeveral repositories + PR between repos

Collaboration

○ Feature workflowMaster + Feature branches + Pull requests

○ Gitflow workflowMaster + Develop + Release + Feature branches

○ Forking workflowSeveral repositories + PR between repos

Support for our team !

Olivier Garcia

Patrick Allaert

Yannick Vanhaeren

FINISHED !

Any questions?

You can find me at:@0livier (with a zero not a o)olivier@lol.cat

CREDITS

Special thanks to all the people who made and released these awesome resources:○ Rebase / Merge images from Atlassian○ Various GIF from gif.lol.cat○ Presentation template by SlidesCarnival○ Unsplash images

top related