Matthieu Moy <[EMAIL PROTECTED]> writes: > I usually review my changes before committing, and everybody should. > The status buffer can be a starting point, but it doesn't show the > changes you want to review. So, you need one more buffer.
Right. In pcvs, I use ediff on each file, with a separate frame holding the commit message. > Now, you can have a status buffer, and one diff buffer per file. DVC > alredy supports this, it's just `=' in the status buffer. But having > all the stuff in a single buffer makes it really more conveinient. > When you have many small changes to multiple files, the status + 1 > diff-buffer per file quickly becomes painfull. yes. > You could have one buffer with the complete diff plus the status > buffer. If you manage to resize the buffers to avoid status taking > half the screen even if it's to show <5 files, if you have a good > synchro between them (equivalent of `j' currently), ... it can be > manageable. This sounds like the best solution to me. >> Why can't you use a status buffer, perhaps with a diff buffer >> visible in a separate window? What other solutions to the problems >> of meaningless keybindings and committing from the wrong diff do you >> see? > > Avoiding committing to the wrong diff is relatively trivial, since you > have two variables giving you the base revision, you can easily check > that the base revision is the HEAD. Even easier, you can just mark the > buffer as OK to commit from after creating it, that's one local > variable. Yes, we can disable commands. But that will be confusing to the user, as well as complicated in the DVC code. I think the issue of meaningless keybindings is very important. I hope to use DVC to introduce my team to modern CM systems. The way they will learn about how to use it is to browse the menu and keybindings. > BTW, commiting from a diff buffer which isn't against the head can be > meaningfull too. For example, "git commit --amend" commits against the > ancestor of the head, and discards the current head (I don't think we > have a good interface for this in DVC). That would be similar to 'disapprove' in monotone; basically, you are reverting a bad change. That is reasonable to support, and it would best be done from the diff buffer, where you have just reviewed the change and decided it's bad. So the list of keybindings that are "meaningless" may be shorter :). -- -- Stephe _______________________________________________ Dvc-dev mailing list [email protected] https://mail.gna.org/listinfo/dvc-dev
