Git

12
Distributed Version Control with git Kerry Buckley

description

Presentation on git from BarcampBrighton2 in March 2008.

Transcript of Git

Page 1: Git

Distributed Version Control with git

Kerry Buckley

Page 2: Git

git

• What is it?

• Why is it different?

• What can I do with it?

• How can I use git if my project uses svn?

• What alternatives exist?

Page 3: Git

Caveats

• I’ve only been using it for a few weeks

• Just scratching the surface

• I may be doing it all wrong

• For all I know it may be eating all my files when I’m not looking

• ...but I like it so far :-)

Page 4: Git

Historyrcs cvs svn git

Page 5: Git

Historyrcs cvs svn git

RepositoryAlice Bob

Versioning of individual files. Files must be locked before commit. No automatic merging.

Page 6: Git

Historyrcs cvs svn git

RepositoryAlice Bob

Versioning of individual files. No locking. Automatic merging.

Page 7: Git

Historyrcs cvs svn git

RepositoryAlice Bob

Versioning of entire project. No locking. Automatic merging.

Page 8: Git

Historyrcs cvs svn git

Alice Bob

Each user has his own repository. No [need for a] central repository.

Page 9: Git

Some Advantages

• No reliance on central repository

• Offline commits

• Local branching

• Merging that doesn’t suck

• Flexible collaboration

• Interoperates with svn

Page 10: Git

Alternatives

• Mercurial (hg)

• Better Windows support

• Bazaar (bzr)

• Darcs

Page 12: Git

Demo