Page 1 of 5 123 ... LastLast
Results 1 to 10 of 43
  1. #1
    Join Date
    Oct 2007
    Location
    Madison, WI
    Posts
    2,529

    Question RFC: Comparing filename case feedback

    After discussing it internally we've come up with what we feel is a better way of handling differences in filename case. If you ever need to do this, please let us know whether this will work for you, and whether you think it's better or worse than BC2's behavior:

    BC2's existing behavior:

    • If "Case sensitive filenames" is checked files with differences in case are not aligned.
    • You can not double-click a line to compare the file with the unaligned file to see differences.
    • If you copy a file to a directory with an unaligned file with different case, that file will be overwritten, but the filename doesn't actually change, and it will show up twice in the directory listing until you do a refresh.
    • Update syncs only perform copies, so like above, it won't actually change the case.
    • Mirror syncs perform deletes before copies, so it will delete the unaligned file and then copy the original file, effectively changing the filename's case.


    BC3 proposed behavior:

    • Folders know whether they're case-sensitive or not. FTP sites can be configured in the FTP Profiles dialog. On Windows all drives and remote shares are considered case-insensitive. On Linux case-sensitivity is auto-detected based on the each folder's filesystem.
    • If either folder is case-insensitive, files that differ in case are aligned. Priority would be given to files who's names match exactly, in case a case-sensitive folder is lined up with a case-insensitive one.
    • We add a new "Compare filename case" option to the "Comparison" "Quick Tests" panel, so differences in filename case will trigger a difference just like differences in DOS attributes does.
    • We add a new "Update filename case when copying" checkbox to the "Handling" "File handling" panel. When copying a file the destination's filename will be adjusted automatically to match the source's.
    • Since the files are now aligned, double clicking on them will show a comparison.
    • Changed names will show up as a difference instead of as a pair of orphans.
    Zo P Scooter Software

  2. #2
    Join Date
    Oct 2007
    Location
    Pennsylvania
    Posts
    1,772

    Default

    The proposed BC3 behavior is more inline with what I would expect case-sensitive handling to look like. However, what seems to be missing is the ablility to sync file names (case differences) without syncing content.
    BC v4.0.7 build 19761

  3. #3
    Join Date
    Oct 2007
    Location
    Pennsylvania
    Posts
    1,772

    Default

    One possible solution would be to touch the filename: when two folders or files are aligned (whether completely different names or case-only differences) offer a new option on the touch dialog to copy the filename from the other side. However it is implemented, one should be able to touch the filename without touching the date and time on the file.
    BC v4.0.7 build 19761

  4. #4
    Join Date
    Oct 2007
    Posts
    786

    Default

    The proposed design does not preclude having a "copy filename" function, which it still on our wishlist.

    Thanks,
    Tim T Scooter Software

  5. #5
    Join Date
    Dec 2007
    Location
    U.S. East coast
    Posts
    303

    Default

    The BC3 proposed behavior sounds reasonable to me.

    One question:

    Priority would be given to files who's names match exactly, in case a case-sensitive folder is lined up with a case-insensitive one.
    Does that means that in a situation like the following, "ABC" on the left side will be aligned with "ABC" on the right side?

    left side:
    ABC
    Abc

    right side:
    ABC

  6. #6
    Join Date
    Oct 2007
    Posts
    786

    Default

    Quote Originally Posted by Dave_L View Post
    Does that means that in a situation like the following, "ABC" on the left side will be aligned with "ABC" on the right side?
    Yes, that's correct.
    Tim T Scooter Software

  7. #7
    Join Date
    Oct 2007
    Posts
    41

    Default

    Would there still be a way to forcibly choose the folder's sensitivity setting? The FTP server may be win32, or the win32 directory may be a copy of a linux folder where it matters. (We use a linux perforce server, so folders that came from perforce are case sensitive.)

  8. #8
    Join Date
    Oct 2007
    Location
    Madison, WI
    Posts
    2,529

    Default

    As I mentioned in the original post, FTP profiles would keep their current case sensitivity setting. I don't want to make drives/shares configurable. I see now that Windows does have a function that's supposed to indicate whether a volume is case sensitive or not, so hopefully Perforce sets that correctly.

    As for a Win32 copy of a Linux directory, you'll be able to tell it to compare case, but you won't be able to tell it to act as if the directory is actually case sensitive. In that case, if you have a file "ABC", and you tell it to copy a file "abc", it's going to overwrite it.
    Zo P Scooter Software

  9. #9
    Join Date
    Oct 2007
    Posts
    41

    Default

    I see... I didn't get the distinction between comparing case and the directory being case sensitive. There's nothing going to make an NTFS drive have abc and ABC, so I can understand wanting to leave the volume case insensitive.

    We've had problems where the case is different on the win32 client than on the perforce server, and fixing those problems usually entails finding which files are affected. I was thinking of the problem from that perspective. It sounds like the proposed behavior suits my needs.

  10. #10
    Join Date
    Jun 2008
    Posts
    73

    Default

    Is there an ETA for case-sensitive compares? It's a bit of a pain to have to run BC2 at the end of many of my compare sessions just to fix case problems.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •