Re: Diffing directories with external diff

"kirillmueller" <[email protected]> Tue, 28 Feb 2006 07:38:51 -0000
Newsgroups gmane.comp.version-control.cvs.gui.devel
Message-ID <[email protected]>
> > (Ctrl+M, type some long message and realize that you've 
> > forgot something...)
> 
> This can be easily solved by other means. We could just have a 
static 
> variable and set it even if dialog is cancelled so when you come 
back 
> your previously typed message is still there.
I did that. Even worked around crippling the log history when the 
commit dialog is cancelled.

> >Honestly, I'd prefer a tree view for that. 
> 
> The problem is that it will look pretty much just like a "normal" 
file 
> view and it will be confusing. But I have good compromise I think. 
> What we need really is a combination of tree and list view. And in 
> fact there is a good model to follow. It's the Visual Studio 
project 
> view where you have a folders and files within. I think this is the 
> best way.
This is exactly what I mean by "tree view" in this case :-)

> > Still, for changed files in the sandbox, a transmission of 
> > the file's "clean copy" is inevitable.
> 
> Well, we could make a diff against the base revision and path the 
file 
> in the sandbox to reverse the changes. This will be two commands 
but 
> in the worst case when someone is diffing two different tags or 
> something like that.
What I mean is that even CVS has no chance to get the difference 
between a modified file in the sandbox and another (even the same) 
revision in the repo without transferring the whole file or do 
something weird like rsync. So, the best case for getting the 
difference to the sandbox is:
- One cvs diff command (CVS will need to retrieve the differing files 
from the repo)
- One local copy from sandbox to temp
- Patching the local copy

For the difference between two tags, it's:
- One cvs diff command to know what files have changed between the 
two tags _and_ to get the patch itself; store the patch in a file
- One cvs update command to get the copies from the newer tag
- A local copy operation for those files
- Applying the patch that's been retrieved previously

So, we need a quick "cvs update" for multiple files anyway. I'll do 
that first, we can use the patch approach if it's still not fast 
enough.

Would it be possible to revoke the old "patch" sources? I haven't 
found sources that promised to be compileable under Windows easily, 
but I didn't try either.


Kind regards,

Kirill





 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/cvsgui-dev/

<*> To unsubscribe from this group, send an email to:
    [email protected]

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/