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

Re: update vs status, where should local mods be displayed?

From: Ben Collins-Sussman <sussman_at_collab.net>
Date: 2001-09-13 21:10:22 CEST

Mo DeJong <supermo@bayarea.net> writes:

> Let me ask this. What is the benefit of spewing out a status
> line for each and every file in the repo by default? What
> question does the end user seek to answer by looking at
> all this status output? Is there an end user question that
> can't be answered by the output if -M style output was
> the default?

There are two common use-cases for 'svn status', I believe.

1. To see local mods

The user wants to know exactly what to commit, or what would be
committed. No other clutter.

2. To examine 'up-to-dateness'.

The user wants to know which files are out-of-date. This means seeing
local revision numbers on files, but *mostly* seeing out-of-date
flags. The user can then predict exactly what will be patched when
'svn up' is run.

The heart of the this debate is: "which use case is more common?"
Whichever is more common -- that should be the default.

On this issue, my own experience may be skewed; I spend every day of
life playing with Subversion, running dozens of hand-tests on test
working copies. I use 'svn st' and have come to depend on it more
often than I run 'ls'. So I value the 2nd use case more. However,
I'm guessing that a typical user (not developer) more often needs the
first use-case. That is, users more often want to predict (or plan)
commits than predict updates.

So, I'm willing to change the default to #1 if that's the consensus.
I wonder what others think.

> > 2. 'svn status' can show only the current directory, or it can
> > display a long recursive list.
> >
> > To be decided: what behavior should be the "default", and which
> > should require a switch?
> >
> > I personally would like to make nonrecursive the default, which is
> > not the status quo. I haven't heard anyone defending the status
> > quo yet. (?)
>
> I could not disagree more strongly. Why make this one command
> non-recursive by default when update is not? Users are supposed
> to use status instead of update, right?

You're right, I retract. {commit, update, checkout, diff} are all
recursive by default. Let's leave status recursive too.

> P.S.
> Here is a quick snip from my local copy of svn_cl__print_status_list.
> It implements the (M,A,D,R) thing Ben suggested above.

I already committed something similar, revision 100. 'svn st -M'
now works the way you suggested.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sat Oct 21 14:36:41 2006

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