[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

"BASE != HEAD" notifications

From: Daniel Shahaf <d.s_at_daniel.shahaf.name>
Date: Fri, 20 Jun 2014 00:06:22 +0000

One of my colleagues ran bisect but forgot to update back to HEAD after
finishing it. Another forgot to run 'svn up' in the morning before starting
to edit a file, and later got conflicts

Both of these user errors might have been prevented if their client had
advised them (during the bisect, for Alice; in the morning, for Bob) that
their working copy's BASE tree differs from HEAD. (That is, that 'svn st
-u' and 'svn diff --summarize -r HEAD' were non-empty.)

Does this sound useful? Would library changes be needed to allow such
functionality to be developed?

I think the library changes will be straightforward: we would just need
to have a "dirty" bit, clear it upon update-to-HEAD, and set it upon
backdate and upon "Has HEAD changed?" checks initiated by the libsvn_client consumer.

Clients (e.g., $EDITOR plugins) could then be configured to request that
check periodically --- say, once per N hours per working copy. Perhaps
an editor-agnostic daemon that monitors *all* working copies in one's
homedir could be developed, too.

(The "dirty" bit would be, more or less, a cache of "Last Changed Revision"
of ${local_relpath}@HEAD; it'll have to account for deletions, renames, and
replacements, though.)

Thoughts?
Received on 2014-06-20 02:06:58 CEST

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.