I have a few files that I noticed have the Other bits turned off (e.g., permissions set to 550 when checked-in to Perforce). I want them to be readable and/or executable by eve
The solution was to set the umask (user file-creation mask) so that it does not mask the bits I want to keep -- e.g., "umask 0022".
My umask was "0027" because by default I did not want new files to be world-readable. Most often a file's permissions stay as they are set. If you edit a file, for example, change its permissions, then edit it again, its permission structure is not reset according to your umask, but rather the original is retained.
It appears as if Perforce erases and re-writes the file with every operation. Even if you "p4 edit" a file, then change your umask, and immediately do "p4 revert" without making any modifications to the file Perforce will change the permission bits according to your umask.
There are two ways to set file permissions in Perforce:
p4 add
the file to Perforce.p4 edit -t text+x some_bash_script.sh
Then Perforce will open the file for edit using the filetype you requested. This document has more information on Perforce filetype options.