Git (Tak. Po prostu.)

33
Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

description

Slides helping me explain how git works and help the crowd keep their focus high during the whole presentation. The presentation was mostly "hands on committing" thats why there are almost no commands or output in the slides. For more, read bellow... :-) STORY: These slides where used by my on my first ever talk to an bigger and competent audience - during the 5th JavaCamp organized by "us" (meaning the Polish Java User Group). Q: So... why are they so "silly"? A: I would NOT call them silly! An GOOD presentation is all about the speaker and the interaction with the audience. These slides serve only the purpose of helping me keep track of our progress, and help the audience to NOT lose their focus on the subject at any given time. What would you prefer: a list of 30 git commands, and then 30 slides "commit does xyz; merge does zyx;..."? I hope you got my point there... ;-) Anyways, please keep in mind it was an hands on session, and not "just slides" :-) Cheers! (oh, and give git a try http://git-scm.com/) You can and should also visit my blog if you want more this, or me et cetera... :-)

Transcript of Git (Tak. Po prostu.)

Page 1: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

Page 2: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

Tak.

Page 3: Git (Tak. Po prostu.)

Tak.Po prostu.

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

Page 4: Git (Tak. Po prostu.)

Masz pytanie?Nie czekaj do końca prezentacji!

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

Page 5: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

„SVN (-HELL)“ *

* Ten slajd jak i całą tą prezentację należy traktować z przymróżeniem oka – dziękuję :-)

Page 6: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

„SVN (-HELL)“ *

Jedno jedyne repozytorium„One to Rule Them All“

Brak współpracy bezpośrednio

między developerami

Branch „udaje“, Rzadko robiony Merge nie są

wygodne

Każdy commit trafia do repo, testuje go CI, zatem każdy commit musi być czymś „done“

Page 7: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

Helo (Git) World!

Page 8: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

Model niby-rozproszony

Page 9: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

Shall I push or shall I pull..?

Page 10: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

SVN ogranicza się do...

Page 11: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

SVN ogranicza się do...

Page 12: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

Commit thyself, Lancelot!

Page 13: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

SVN (etc) look at files...

Page 14: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

Git looks into their SOULS (content)...

BlobTree

CommitTag

Page 15: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

Nie ma treści = nie ma nic.

Page 16: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

BRANCH + MERGE

Page 17: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

BRANCH + MERGE

Page 18: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

BRANCH + MERGE

Page 19: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

BRANCH + MERGE

Page 20: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

Poważne BRANCHowanie:

Page 21: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

So many heads...?

Page 22: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

„Pierwszy raz“

Page 23: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

„Pierwszy raz“ - dziwnie?

Page 24: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

FF

FAST FORWARD MERGE

Page 25: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

--NO-FF

Page 26: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

Oraz usuwanie brancha

Page 27: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

OCTOPUS

Page 28: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

OCTOPUS (MERGE ENGINE)

Page 29: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

STASH

Page 30: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

TAG

svn copy http://svn.example.com/repos/calc/trunk \ http://svn.example.com/repos/calc/tags/release-1.0 \ -m "Tagging the 1.0 release of the 'calc' project."

= Git tag release-1.0

git tag -am "super nam poszlo!!!" release-1.0 b8b9a69e5629b6b450

Page 31: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

Poznaliśmy również podstawy:

Bazaar

Page 32: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

ありがとうありがとう(DZIĘKUJĘ)(DZIĘKUJĘ)

ZA UWAGĘ!ZA UWAGĘ!

Page 33: Git (Tak. Po prostu.)

Konrad „Ktoso“ Malawski – [email protected] - @ktosopl – blog.project13.pl – JavaCamp #5 - 06.11.2010

Pytanie Bonusowe: Co to jest?