Trouble with ignoring Subversion directories with EDP

General questions about using ExamDiff Pro, ideas for new features, bug reports, and usage tips.
Portabill
New Member
Posts: 2
Joined: Thu May 12, 2005 8:25 am

Trouble with ignoring Subversion directories with EDP

Post by Portabill »

I know similar questions have been asked, and I've tried them. So far I can't get EDP to ignore directories named .svn

I've tried setting the Options, Directory Comparison, Exclude pattern to all of these settings. This is the only exclude pattern
:.svn
:*svn*
*svn*
And various other derivations

Going crazy

Thanks,

Bill
User avatar
psguru
Site Admin
Posts: 2228
Joined: Sat May 15, 2004 4:23 pm
Location: California
Contact:

Post by psguru »

The following two work for me:

:*svn*
:*.svn*

Perhaps there's something else either in your options or in your directory structure that causes the filter not to work. You could export your options to a file (via the Options dialog, Export to File button) and post them here, so that we could eliminate the former. For the latter, I'm not sure how you could show your directory structure in the forum -- perhaps by running "dir /s" command on both folders.
psguru
PrestoSoft
Portabill
New Member
Posts: 2
Joined: Thu May 12, 2005 8:25 am

Post by Portabill »

This one did it

:*.svn*

Thanks
zweistein
Full Member
Posts: 48
Joined: Wed Jul 27, 2005 8:13 am
Location: Belgium

Post by zweistein »

I'm almost sure this will also exclude files or folders named for instance "important.synonyms.txt".
It's safer to use

Code: Select all

:*\.svn\*
MudGuard
Expert Member
Posts: 69
Joined: Mon Jun 07, 2004 12:42 am

Post by MudGuard »

zweistein wrote:I'm almost sure this will also exclude files or folders named for instance "important.synonyms.txt".
It's safer to use

Code: Select all

:*\.svn\*
Why should :*.svn* exclude important.synonyms.txt?

or with other words:
Why shoud a 'vee' (v) match a 'why' (y)?

;-)
User avatar
psguru
Site Admin
Posts: 2228
Joined: Sat May 15, 2004 4:23 pm
Location: California
Contact:

Post by psguru »

Why should :*.svn* exclude important.synonyms.txt?
It won't. Still, *\.svn\* is a bit more precise.
psguru
PrestoSoft
zweistein
Full Member
Posts: 48
Joined: Wed Jul 27, 2005 8:13 am
Location: Belgium

Post by zweistein »

Darn, I read .syn at first... Let me see, a word starting with svn... Well isn't "svnikrt" is an obvious name for your pet Przewalski horse?
jsivak
New Member
Posts: 7
Joined: Thu May 03, 2007 11:14 am

Post by jsivak »

zweistein wrote:I'm almost sure this will also exclude files or folders named for instance "important.synonyms.txt".
It's safer to use

Code: Select all

:*\.svn\*
I'm using

Code: Select all

:*\.svn\*
in my Exclude pattern, but when I compare a Subversion controlled directory to a non-subversion controlled directory I'm still seeing the ".svn" directories in one side of the EDP display. I'm expecting it to be ignored.

When I used to do this with CVS directories excluded EDP didn't show them when only "one side" had the directories.. (This was also when I was using EDP 2.4)

Is this a bug?
User avatar
psguru
Site Admin
Posts: 2228
Joined: Sat May 15, 2004 4:23 pm
Location: California
Contact:

Post by psguru »

Could you provide a screenshot that would illustrate this problem?
psguru
PrestoSoft
zweistein
Full Member
Posts: 48
Joined: Wed Jul 27, 2005 8:13 am
Location: Belgium

Post by zweistein »

.svn directories still show up in directory comparisons. I never considered that to be a bug. Perhaps they should be marked as "ignored" but that is not a feature in directory comparisons (in EDP 3.4). Then again, it's called exclude pattern, not ignore pattern. On the other hand, the include pattern does apply to directory comparisons. In any case, the full recursion view is what I use most and it does take the pattern into account.

To make matters complicated, a related option is Dir Comparison > More > Ignore backup subdirectory in comparison. It applies to directory comparisons and recursion. So now I'm tempted to state that you did report a bug.

I wonder why your CVS direcrtories are hidden. The .svn directories have the "hidden" attribute set. Perhaps CVS also sets the "system" attribute?
jsivak
New Member
Posts: 7
Joined: Thu May 03, 2007 11:14 am

Post by jsivak »

Acutally, I stumbled across a way to make it disappear.

For CVS directories:
If I use:

Code: Select all

:*\.svn\*,:*\CVS\*,CVS
The CVS directories are hidden when they only "exist" in 1 directory and not the other

If I use:

Code: Select all

:*\.svn\*,:*\CVS\*
Then the CVS directories are shown.

Same goes for .svn directories:
Using

Code: Select all

:*\.svn\*,:*\CVS\*
Allows the .svn directory to be "shown"

Using

Code: Select all

:*\.svn\*,:*\CVS\*,.svn
works, but also slows down the Directory comparison significantly..

It appears that the

Code: Select all

:*\.svn\* 
isn't working with the "top"/root directories.
User avatar
psguru
Site Admin
Posts: 2228
Joined: Sat May 15, 2004 4:23 pm
Location: California
Contact:

Post by psguru »

The CVS directories are hidden when they only "exist" in 1 directory and not the other
Could you provide an example of this?

Using

Code: Select all

:*\.svn\*,:*\CVS\*,.svn
works, but also slows down the Directory comparison significantly.
The slowdown here is due to the fact that each name and path are matched to the three filters that you specified. Just to clarify, here's what the Help has to say about patterns:

Code: Select all

Use the conventional DOS wildcard characters to specify these types. In order to match full paths of files/directories, prefix filters with ':' character (which will be ignored during matching); by default only names are matched against the filter. E.g., a name filter "*file*" (without quotes) will match against "c:\xyz\abc\file1.txt" and "c:\xyz\abc\file2.txt" files, while a path filter ":*file*" (without quotes) will in addition match against "c:\xyz\new_files\abc.txt" (note "new_files" in the path). A common use of path filters is to exclude or include files based on subdirectories they are located in -- use ":*\subdir\*" filter (again, no quotes).
It appears that the

Code: Select all

:*\.svn\*
isn't working with the "top"/root directories.
I'm not sure what you mean. Again, your pattern should match any path, that complies with "*\.svn\*". Could you provide an example of a path that doesn't match this pattern but you expected it to match?
psguru
PrestoSoft
jsivak
New Member
Posts: 7
Joined: Thu May 03, 2007 11:14 am

Post by jsivak »

Screenshot using

Code: Select all

:*\.svn\*,:*\CVS\*,CVS,.svn
Image


Screenshot using

Code: Select all

:*\.svn\*,:*\CVS\*,CVS
Image

All the sub-directories now show "different" because the .svn directories are seen on the left but not the right.
User avatar
psguru
Site Admin
Posts: 2228
Joined: Sat May 15, 2004 4:23 pm
Location: California
Contact:

Post by psguru »

If .svn folders only exist in the left directory then the results look right. In your first filter you ignore .svn names, and that is what EDPro sees when it scans the left directory. *\.svn\* filter (which is a path filter because of ':'), on the other hand, does not match the path D:\sandbox\b_5-5-x\Center\.svn -- because of the trailing '\'. You could change this first filter to :*\.svn, and if should work.
psguru
PrestoSoft
jsivak
New Member
Posts: 7
Joined: Thu May 03, 2007 11:14 am

Post by jsivak »

psguru wrote:If .svn folders only exist in the left directory then the results look right. In your first filter you ignore .svn names, and that is what EDPro sees when it scans the left directory. *\.svn\* filter (which is a path filter because of ':'), on the other hand, does not match the path D:\sandbox\b_5-5-x\Center\.svn -- because of the trailing '\'. You could change this first filter to :*\.svn, and if should work.
Ok, I've got the Exclude pattern set to:

Code: Select all

:*\.svn,:*\CVS\*,CVS
and its not displaying the ".svn" directories now, thanx.

So, should the "correct" CVS exclusion also just be:

Code: Select all

:*\CVS
Post Reply