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

2021-09-09 11:22:18 +08:00
 xiaozhuge

参考了文档 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 更新的文件的组权限依然没有写权限

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

如果你有 docker,还可以把 user2 映射到 docker 中的某个用户然后从容器中更新,效果也是一样的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/800776

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX