subversion-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stefan Sperling <s...@elego.de>
Subject Re: 'svn incoming'
Date Tue, 08 May 2012 18:20:27 GMT
On Tue, May 08, 2012 at 07:31:53PM +0200, Stefan Sperling wrote:
> On Tue, May 08, 2012 at 08:08:13PM +0300, anatoly techtonik wrote:
> > Seems nice. Although I still personally feel that command line user
> > interfaces need unification.
> 
> I've committed the change. Thanks for starting this discussion!
> 
> I understand the rationale behind trying to unify interfaces
> and terminology between the various version control systems that
> people use today. But I believe that a high degree of unification will
> never become reality because the systems are conceptually very different.
> 
> The functionality under discussion is a feature provided by 'svn log'.
> So I believe that Subversion users should simply get used to using
> 'svn log' for this purpose. I hope the little tweak I made to the help
> text will make it easier for Mercurial users to find this feature.
> Note that I used the word 'incoming' in the help text on purpose in
> case someone searches for that term.

Bert Huijben pointed out that 'svn log -r BASE:HEAD' shows changes
relative to the BASE revision of the current directory but not necessarily
changes that are destined for other nodes in the working copy (parents
or children) that are at a different BASE revision. So if you have a
mixed-revision working copy (see
http://svnbook.red-bean.com/en/1.7/svn.basic.in-action.html#svn.basic.in-action.mixedrevs),
then 'svn status -u' provides a more accurate picture.

For example, the current directory's children may already contain all
changes made in a revision shown in the log, in which case updating the
parent directory to this revision is a no-op change that only raises
the directory's BASE revision but applies no actual changes. In this
case 'svn status -u' would show no incoming changes for those children,
while 'svn log -rBASE:HEAD' will still display the revision.

So 'svn status -u' is a better equivalent to 'hg incoming' than
'svn log -rBASE:HEAD'. But, in most cases, the log command will show
what you're interested in.

The mixed-revision concept is entirely foreign to Mercurial. It only
has "single-revision working copies", if you will.

Mime
View raw message