Update: Re: bzr 0.6 commit problem: parent_id {blah} not in inventory
John Whitley
whitley at acm.org
Fri Nov 4 01:31:00 GMT 2005
On Nov 3, 2005, at 2:29 AM, Andrew S. Townley wrote:
> While I admit that me checking in individual files with meaningful log
> messages takes minutes vs. the seconds that doing a global commit
> does,
> I'll happily take that trade-off to have meaningful log messages. I
> want both things: meaningful log messages and a tree that builds :)
> However, if the tree doesn't build for 5-10 minutes and then it
> doesn't,
> the chances of it disrupting people doing work is pretty low except in
> the chance that they did an update while this was happening.
It looks to me like two issues are being conflated here: the ability
to record meaningful
per-file log notes for a commit, versus the idea of an atomic commit
of all related changes.
Andrew, I'll suggest that what you really need is a commit plugin
that fires up your editor already primed with the output of "bzr
status" run on the same scope as the commit. Then you can easily
annotate the per-file changes as needed. By following a simple
convention in these logs, it would be possible to extract two views
on changes to the system -- 1) the cross-tree history of atomic
commits and 2) the per-file "slice" of changes made to that file.
Perforce's commit mechanism is a related example: when submitting a
changeset, the user is presented with an editor which has several
areas including:
* information about the branch
* the file changes to be submitted
* an area for comments on the change
Having the file-level changes presented at commit time was a nice
cheat-sheet for making sure that my changes were thoroughly commented.
FWIW, the commit plugin I mentioned above is really a special case of
the more general need to prime commit logs with metadata of various
forms. E.g. a tag listing bug numbers resolved by this commit, for
systems that automatically cross-reference with a bug tracking
system, etc.
-- John
More information about the bazaar
mailing list