Git Square

Post on 30-Nov-2014

407 views 0 download

Tags:

description

Pequeña introducción a Git, presentada en el Grupo de Usuarios de Tecnologías Google en Madrid el 21de octubre del 2011.

Transcript of Git Square

Git^2Gentle Introduction To Git

1viernes 21 de octubre de 11

It’s a Me!

• Sergio Arbeo

• Mathematician

• Programmer

2viernes 21 de octubre de 11

History

• Based on BitKeeper (not OSS)

• Collections of scripts

3viernes 21 de octubre de 11

Install Git

• Linux: from source or package.

• Mac: from package or brew.

• Windows: use an installer.

4viernes 21 de octubre de 11

Setting it up

• system

• global

• specific

5viernes 21 de octubre de 11

Setting it up

• git config --global user.name “River Song”

• git config --global user.email river@song.com

6viernes 21 de octubre de 11

New repo

7viernes 21 de octubre de 11

New Repo

8viernes 21 de octubre de 11

New Repo

9viernes 21 de octubre de 11

Next step. New file.

10viernes 21 de octubre de 11

Next step. New file.

11viernes 21 de octubre de 11

Git status

12viernes 21 de octubre de 11

Next step. New file.

13viernes 21 de octubre de 11

Track file.

14viernes 21 de octubre de 11

Track file.

15viernes 21 de octubre de 11

Track file.

16viernes 21 de octubre de 11

Track file.

17viernes 21 de octubre de 11

Echo, echo, echo...

18viernes 21 de octubre de 11

Echo, echo, echo...

19viernes 21 de octubre de 11

Echo, echo, echo...

20viernes 21 de octubre de 11

Echo, echo, echo...

21viernes 21 de octubre de 11

Echo, echo, echo...

22viernes 21 de octubre de 11

Echo, echo, echo...

23viernes 21 de octubre de 11

Echo, echo, echo...

24viernes 21 de octubre de 11

WHAT

25viernes 21 de octubre de 11

WHATTHE

26viernes 21 de octubre de 11

WHATTHE

FUCK?

27viernes 21 de octubre de 11

What’s out there?

• Working copy

• Stage

• Commited

28viernes 21 de octubre de 11

Working copy

• Changes

• Not saved

29viernes 21 de octubre de 11

Stage

• Saved changes

• Not committed

• Not in history yet

30viernes 21 de octubre de 11

Stage: git add

• No file.

• But content.

31viernes 21 de octubre de 11

Stage: git add

32viernes 21 de octubre de 11

Committed

• Changes saved

• Committed

• In (local) history

33viernes 21 de octubre de 11

git commit

• Saves the stage area

• Adds a message

34viernes 21 de octubre de 11

git commit

35viernes 21 de octubre de 11

git commit

36viernes 21 de octubre de 11

git commit

37viernes 21 de octubre de 11

git commit

38viernes 21 de octubre de 11

git commit

39viernes 21 de octubre de 11

Commit

40viernes 21 de octubre de 11

Commit

41viernes 21 de octubre de 11

Commit

42viernes 21 de octubre de 11

Commit

43viernes 21 de octubre de 11

Commit

44viernes 21 de octubre de 11

Rewriting history

• Some nice commit message

• A nice commit message

45viernes 21 de octubre de 11

git commit --amend

• You can

• You should not

• Seriously, forget it

46viernes 21 de octubre de 11

git commit --amend

47viernes 21 de octubre de 11

git commit --amend

48viernes 21 de octubre de 11

git log

49viernes 21 de octubre de 11

git log

• -n

• --since=”two days ago”

• --pretty=<format>

50viernes 21 de octubre de 11

Hey, dawg!

51viernes 21 de octubre de 11

What about that distributed thing?

52viernes 21 de octubre de 11

Until now

• Local

• Local

• Local

53viernes 21 de octubre de 11

!local

54viernes 21 de octubre de 11

local

Remote

55viernes 21 de octubre de 11

git remote

56viernes 21 de octubre de 11

git remote

57viernes 21 de octubre de 11

git remote

58viernes 21 de octubre de 11

git remote

59viernes 21 de octubre de 11

git remote

60viernes 21 de octubre de 11

git remote

git fetch remotelocal

61viernes 21 de octubre de 11

git remote

git pull remoteworkingcopy

62viernes 21 de octubre de 11

git remote

git push remotelocal

63viernes 21 de octubre de 11

git remote

git clone remote

64viernes 21 de octubre de 11

More, much more

• bisect

• revert

• cherry-pick

• stash (sorry, Fer)

• branches

65viernes 21 de octubre de 11