0

I have one system with msys2, and another system with Ubuntu. Files in Unix have the executable attribute. Files in msys2 (NTFS based) do not have the executable attribute (although msys2 "fakes" it by looking for the shebang in the first line of each file, at least for ls).

When exchanging files with bzr (via commit, e.g.), I would like bzr to ignore the executable attribute as a parameter for determining what to commit. Otherwise, when committing from my msys2 system I would mess the repository.

Is this possible?

EDIT: Actually, msys2 does not have other attributes as well, so I would like to ignore all that differs from Unix.

1 Answers1

0

On Windows, Bazaar ignores the executable bit based on the sys.platform variable. However, apparently that's not set to win32 on msys2 but to msys2. You can manually fix this in Bazaar by changing the supports_executable() function in bzrlib/osutils.py from:

return sys.platform != "win32"

to

return sys.platform not in ("win32", "msys", "msys2")

Newer versions of Breezy, the successor to Bazaar, address this by not reading the executable bit from the filesystem if the filesystem (e.g. FAT, NTFS, etc) does not support executable bits rather than checking sys.platform.

jelmer
  • 2,405
  • 14
  • 27