Evan Martin (evan) wrote in evan_tech,
Evan Martin
evan
evan_tech

dvcs and offline

I got a couple of comments on that previous post that betray a bit of a misunderstanding about how collaborative projects work in the presence of distributed version control.

Two possibilities: you're offline or online.

For circumstances when you really are offline (and again, I note that I really am without internet access for a surprising fraction of my hacking time) there is fundamentally no way a bug tracker that requires me to be online can work. For many, the answer to this problem is "wait until you're online" or "take notes in a text file", which is well and good if you're the sort to accept a sub-par situation as unsolvable. (I repeat from before: any time you're resorting to manually shuffling source code, your source control system is failing you*. You could make the same claim about any other tool.) So yes, bug tracking is importantly a communication tool, but if the situation is that I'm physically unable to communicate you can't cite non-communication as a negative of any proposed alternative.

Otherwise, even when you have internet access, no technology solves the communication problem if people aren't willing to communicate. "Private repositories" are a problem, but they're a problem no different from contributors who won't email or contributors who sit on a patch.

When I'm online collaborating with someone else, the workflows between an "offline" and "online" system are equivalent except for running the sync step after some operations. So I thought anon-commenter Daniel's point that email also has this offline-online hybrid behavior (where Outlook has the huge "Send / Receive" button on the toolbar) was right on -- I'd much rather use an offline email client that could sync than one that forced me to be online to use it**. And as he points out, email would be terrible for real-time communication if people only synced once every few days -- that's why you don't do that, with email or dvcs, if you intend to participate in a project. (Though in circumstances where I want to avoid email or hack on some code that doesn't yet compile, that workflow remains available.)

* By this metric the tools I use continue to fail me occasionally; they just fail less than the tools I used before.
** I remain hopeful such a technology will one day be invented. I gave up on mutt when I realized it can't scale beyond a few thousand messages and didn't provide any useful search. Maybe sup will get there.
Tags: dvcs
Subscribe

  • your vcs sucks

    I've been hacking on some Haskell stuff lately that's all managed in darcs and it's reminded me of an observation I made over two years ago now (see…

  • git evangelism: enough already

    As a person who uses Git extensively and thoroughly, and as someone works on/around two large open source projects (Chrome, WebKit) that are managed…

  • using git with svnsync

    git.chromium.org is a git-svn mirror of the canonical SVN repository. It works like this: the SVN server pushes out, with svnsync, a mirror to…

  • Post a new comment

    Error

    default userpic
    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 9 comments