Requirements gathering for new package source control
Kevin Kofler
kevin.kofler at chello.at
Mon Jun 9 22:57:31 UTC 2008
Jesse Keating <jkeating <at> redhat.com> writes:
> Be useful for offline development
Is that really a desirable thing at all? I know decentralized systems are "in"
at the moment, but I think they're really unhelpful and counterproductive.
Offline/private development:
* keeps others from seeing what you're doing - it's a step towards a closed
development model, away from our goals of openness,
* risks reinventing the wheel, because you don't know what the comaintainers
have committed locally,
* increases the risk of merge conflicts, because a whole bunch of changes gets
dumped on the repo at once.
What I think we should encourage instead is to commit early, commit often. Even
if the work is only partly done, it is often useful to commit what you have.
And with "commit" there, I really mean committing/pushing to the central repo,
not locally.
The problem as I see it is that N local commits and one big push are always
compared to one big central commit (and there of course the N local commits win
because they keep the history), but that's not the proper way to use a
centralized source control system, N central commits are. Decentralized source
control is only a way to make source control abuse slightly less of an issue,
while at the same time encouraging such abuse.
In addition, the decentralized model introduces an additional source of errors:
not only can you forget to commit, but you can also forget to push what you
committed.
Kevin Kofler
More information about the devel
mailing list