Modern version control systems for Debian packaging

LCA2008, Melbourne, Australia 28 Jan 2008

Introduction

Distributed VCS are hip!
Disclaimer: I'm a Git. I don't see noteworthy differences in the concepts behind Git and other "modern VCS". There may be, but not in this talk.

Evolution of version control

vcs.png

This mailing list post explains the graph a bit.

CVS-like version control systems

Centralised version control

zentrale-vcs.png

Modern version control systems

Commit-based version control

verteilte-vcs.png

Potential problems during merges

cherry-picking.png

Why modern VCS merge better than the ancient cruft

Common ancestors during merges

cherry-picking.png

Introducing feature branches

My workflow

With credits especially to

  • Manoj Srivastava, who introduced me to feature branches
  • and Pierre Habouzit, who provided a lot of input and showed me how he uses Git for packaging,

I now want to show you my workflow

Feature branches

Other branches in use

The big picture

workflow.png

Live demonstration?

Do you want to see this in action?

Working with other distros

My only friend, the end…

Thank you for your attention!

Licence

These slides, their design, and the content are © martin f. krafft and released under the terms of the CC by-nc-sa 2.5 licence.

reStructuredText sources: slides.rst and ui/base/*.

Slides based on the S5 presentation system.