【问题标题】:Permissions are too open after pushing from Windows to Bitbucket, then pulling to a Linux server?从 Windows 推送到 Bitbucket,然后拉到 Linux 服务器后权限太开放?
【发布时间】:2012-08-16 09:15:19
【问题描述】:

我在本地机器上编写代码。我将代码推送到 Bitbucket 中的 Mercurial 存储库。然后,我登录到客户端的网络服务器并从 Bitbucket 存储库“拉/更新”到服务器。

问题是他们的帐户在共享服务器上,运行 suphp,并且安全设置只允许 suphp 提供文件 chmod'ed 644 (-rw-r--r--)。但是每次我从 Bitbucket 存储库中提取时,文件权限都会更改为 664 (-rw-rw-r--)。

这不是权限过于严格的问题,因为其他人曾尝试同步 Hg 存储库。 Mercurial 不复制文件权限也不是问题。 (hg 过去只复制执行位,但现在复制所有权限。)

我怀疑我可以以某种方式将我的 Windows 机器上的权限更改为更具限制性并且可能会修复它,但我不确定 Windows 权限如何转换为 Linux“所有者/组/世界”设置。 (我的 Windows 机器上的文件允许“完全控制”我的帐户、“管理员”组和“系统”,它们从包含文件夹(位于我的文档中)继承的所有权限。)

有没有人能解决这个问题?我可以在 Linux 机器上做一个更新后挂钩到 chmod 644 find . -type f 吗?

【问题讨论】:

  • Mercurial 没有改变:它仍然只能对执行位进行版本控制。所以你的 Windows 机器上的文件的权限在这里并不重要。

标签: mercurial file-permissions post-update


【解决方案1】:

在您的登录配置文件中设置 umask,例如~/.bash_profile

umask 033

man umask 了解详情。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-01-12
    • 1970-01-01
    • 2016-06-21
    • 2017-06-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-13
    相关资源
    最近更新 更多