Hi,
On Sun, 10 Jun 2007, Johan Herland wrote:
On Sunday 10 June 2007, Johannes Schindelin wrote:
quoted
As for the general direction of implementing notes as tags: If you
want to make them fetchable, you have to deal with conflicts. If you
want to be able to amend notes, _especially_ when they should be
fetchable, you want a history on them.
I'm not sure what kind of notes you're talking about here. If you're
talking about my git-note concept, I designed notes to be immutable
(thus not amendable) and there is therefore _no_ merging or potential
for conflicts between notes.
Okay, that is one way you can go about implementing notes.
The only resolution needed is to figure out which order the notes for a
given object should be presented. The default here is chronological
sorting.
There are several problems with that approach I'd like to point out:
- In distributed environments, you can not rely on timestamps. Ever.
- If a note is deleted, you will fetch it again as long as the other side
did not delete it.
- You cannot undo a typo (since the notes are immutable, you would see
both versions), once the typoed note was fetched.
Basically, everything I see as a problem here suggests that note writing
is very much like working on a branch. That's why I suggest to treat it
exactly like a branch to begin with.
Ciao,
Dscho