V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
git
Pro Git
Atlassian Git Tutorial
Pro Git 简体中文翻译
GitX
xiaozhuge
V2EX  ›  git

git 问题:已有仓库,在 umask=022 的基础上, git 如何配置可以使 git pull 新创建的文件的组有写权限

  •  
  •   xiaozhuge · 2021-09-09 11:22:18 +08:00 · 1313 次点击
    这是一个创建于 1200 天前的主题,其中的信息可能已经有所发展或是发生改变。

    参考了文档 https://stackoverflow.com/questions/3242282/how-to-configure-an-existing-git-repo-to-be-shared-by-a-unix-group, 使用 git config core.sharedRepository group,但是 git pull 更新的文件的组权限依然没有写权限

    AoEiuV020
        1
    AoEiuV020  
       2021-09-09 11:40:01 +08:00
    第一反应是 hook,啥也不用管,直接 chmod,
    rekulas
        2
    rekulas  
       2021-09-10 13:25:56 +08:00
    chmod 是最简单但也是最不可靠的,随时有可能引起不可预测的问题,特别是重置权限到一半的时候
    我推荐使用目录的真正执行用户登录去 git 更新,如果执行用户比较特殊也可以用 root 账号但以用户的角色去更新
    su -s /bin/bash -c "git pull ..." user2
    这样更新的文件就是属于 user2 了

    如果你有 docker,还可以把 user2 映射到 docker 中的某个用户然后从容器中更新,效果也是一样的
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2859 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 12:43 · PVG 20:43 · LAX 04:43 · JFK 07:43
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.