ruby-on-rails - OS X 和 Windows 之间的文件权限发生了变化

标签 ruby-on-rails file-permissions

我从 OS X 压缩了一个 Rails 项目并将其发送给一位在 Windows 上工作的同事。他更新了源代码,压缩了整个项目文件夹并将 zip 文件发送回给我。

解压项目后,我发现文件权限信息丢失了。例如,script/server-rwxr-xr-x 更改为 -rw-r--r--。在 Mac 和 Windows 之间传输文件时,有没有办法保留文件权限标志?

谢谢

最佳答案

ZIP 文件格式不保留权限。 *.tar(以及 *.tar.bz2 和 *.tar.gz)格式确实保留权限;然而,大多数 Windows 机器不能立即理解它们,并且不能保证当它们被解压然后重新解压时,权限将被保留(但如果您在任何其他 UNIX 机器上解压存档,它们将具有与最初被 tar 时相同的权限)。但是,由于您正在协作处理源代码文件,因此您确实应该使用某种版本控制系统 (VCS),也称为源代码管理 (SCM)。有多种可能的选项,具体取决于您更喜欢集中式版本控制系统 (CVCS) 还是分布式版本控制系统 (DVCS)。对于 CVCS,Subversion (SVN) 版本控制系统是一个显而易见的选择。对于 DVCS,GitMercurial都值得考虑。据我所知,这些版本控制系统将保留权限(或者它们允许通过属性显式设置权限 - 例如“svn:executable”)。

关于ruby-on-rails - OS X 和 Windows 之间的文件权限发生了变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2846387/

相关文章:

ruby-on-rails - ruby on rails 中的下拉列表表单验证警报

Linux目录权限读写不删除

javascript - 使用 Rails 4 应用程序实现 wrapbootstrap 主题的问题

ruby-on-rails - 如何用roo打开xls文件

html - IIS6 : Disallow a particular file extension from being downloaded

permissions - 当我执行 'make install' 时,它不会创建目录

java - 如何使用JAVA在Linux中更改对传入文件的权限

python - 如何存储Python应用程序数据

ruby-on-rails - JSON Rails API 的功能测试

ruby-on-rails - 安装 http_parser.rb 时出现错误 : Failed to build gem native extension