23
What I’ve learned about DVCS (and why I’m still on the fence)

New What I’ve learned about DVCSmedia.b-list.org/presentations/2009/pycon/dvcs.pdf · 2009. 3. 28. · Personal DVCS success • I use Mercurial at my day job, and in working with

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: New What I’ve learned about DVCSmedia.b-list.org/presentations/2009/pycon/dvcs.pdf · 2009. 3. 28. · Personal DVCS success • I use Mercurial at my day job, and in working with

What I’ve learned about DVCS

(and why I’m still on the fence)

Page 2: New What I’ve learned about DVCSmedia.b-list.org/presentations/2009/pycon/dvcs.pdf · 2009. 3. 28. · Personal DVCS success • I use Mercurial at my day job, and in working with

Back in July I wrote a blog post about DVCS

Page 4: New What I’ve learned about DVCSmedia.b-list.org/presentations/2009/pycon/dvcs.pdf · 2009. 3. 28. · Personal DVCS success • I use Mercurial at my day job, and in working with

The two things about DVCS

• Better merging

• Local/offline commit

Page 5: New What I’ve learned about DVCSmedia.b-list.org/presentations/2009/pycon/dvcs.pdf · 2009. 3. 28. · Personal DVCS success • I use Mercurial at my day job, and in working with

If SVN released with...

• Better merging

• Local change tracking

Page 6: New What I’ve learned about DVCSmedia.b-list.org/presentations/2009/pycon/dvcs.pdf · 2009. 3. 28. · Personal DVCS success • I use Mercurial at my day job, and in working with

What would be left in favor of DVCS?

Page 7: New What I’ve learned about DVCSmedia.b-list.org/presentations/2009/pycon/dvcs.pdf · 2009. 3. 28. · Personal DVCS success • I use Mercurial at my day job, and in working with

I started using DVCS anyway

Page 8: New What I’ve learned about DVCSmedia.b-list.org/presentations/2009/pycon/dvcs.pdf · 2009. 3. 28. · Personal DVCS success • I use Mercurial at my day job, and in working with

The good news

• Mercurial’s really easy to use

• Bitbucket’s better than Google Code Hosting

Page 9: New What I’ve learned about DVCSmedia.b-list.org/presentations/2009/pycon/dvcs.pdf · 2009. 3. 28. · Personal DVCS success • I use Mercurial at my day job, and in working with

The bad news

• I still don’t know whether DVCS is “better”

• I do know some ways in which it’s “worse”

Page 10: New What I’ve learned about DVCSmedia.b-list.org/presentations/2009/pycon/dvcs.pdf · 2009. 3. 28. · Personal DVCS success • I use Mercurial at my day job, and in working with

Django 1.1

• There was a feature scheduled for this release

• I lost track of it, and now we’re behind by over a month

Page 11: New What I’ve learned about DVCSmedia.b-list.org/presentations/2009/pycon/dvcs.pdf · 2009. 3. 28. · Personal DVCS success • I use Mercurial at my day job, and in working with

Where is the code?

• The code is in the SVN repository...

• And on GitHub...

• And on Bitbucket...

• And on Launchpad...

Page 12: New What I’ve learned about DVCSmedia.b-list.org/presentations/2009/pycon/dvcs.pdf · 2009. 3. 28. · Personal DVCS success • I use Mercurial at my day job, and in working with

Amongst our repositories are...

Page 14: New What I’ve learned about DVCSmedia.b-list.org/presentations/2009/pycon/dvcs.pdf · 2009. 3. 28. · Personal DVCS success • I use Mercurial at my day job, and in working with

Personal DVCS success

• I use Mercurial at my day job, and in working with Django

• All the repositories I ultimately commit to are SVN

Page 15: New What I’ve learned about DVCSmedia.b-list.org/presentations/2009/pycon/dvcs.pdf · 2009. 3. 28. · Personal DVCS success • I use Mercurial at my day job, and in working with

Django DVCS success

• We have committers who use Git

• We have committers who use Mercurial

• We have committers who use Bazaar

Page 16: New What I’ve learned about DVCSmedia.b-list.org/presentations/2009/pycon/dvcs.pdf · 2009. 3. 28. · Personal DVCS success • I use Mercurial at my day job, and in working with

All push to the central Django SVN repo

Page 17: New What I’ve learned about DVCSmedia.b-list.org/presentations/2009/pycon/dvcs.pdf · 2009. 3. 28. · Personal DVCS success • I use Mercurial at my day job, and in working with

So what, exactly, has been “distributed”?

Page 18: New What I’ve learned about DVCSmedia.b-list.org/presentations/2009/pycon/dvcs.pdf · 2009. 3. 28. · Personal DVCS success • I use Mercurial at my day job, and in working with

How do big projects do it?

• Perl before DVCS: “Perl” is whatever Larry says it is

• Perl after DVCS: “Perl” is whatever Larry says it is

Page 19: New What I’ve learned about DVCSmedia.b-list.org/presentations/2009/pycon/dvcs.pdf · 2009. 3. 28. · Personal DVCS success • I use Mercurial at my day job, and in working with

Successful DVCS use doesn’t seem to use

the “D” much

Page 20: New What I’ve learned about DVCSmedia.b-list.org/presentations/2009/pycon/dvcs.pdf · 2009. 3. 28. · Personal DVCS success • I use Mercurial at my day job, and in working with

So we come full circle

• Better merging

• Local/offline commit

• If SVN sprouted these, what would be left in favor of DVCS?

• Easy repository creation?

Page 21: New What I’ve learned about DVCSmedia.b-list.org/presentations/2009/pycon/dvcs.pdf · 2009. 3. 28. · Personal DVCS success • I use Mercurial at my day job, and in working with

Where I am today

• I like better merging, and anything is better than SVN’s merging

• But that doesn’t require DVCS, and DVCS has some issues to work out

Page 22: New What I’ve learned about DVCSmedia.b-list.org/presentations/2009/pycon/dvcs.pdf · 2009. 3. 28. · Personal DVCS success • I use Mercurial at my day job, and in working with

Maybe we just haven’t found the right patterns

Page 23: New What I’ve learned about DVCSmedia.b-list.org/presentations/2009/pycon/dvcs.pdf · 2009. 3. 28. · Personal DVCS success • I use Mercurial at my day job, and in working with

So SVN isn’t quite dead yet (but it’s not getting better)