Git 远程仓库默认权限问题的解决
多人共同开发维护一个项目时,对整个项目文件互有拉取、推送等行为。为防止操作时文件权限出现冲突,可有以下2种方法解决:
1. 本地git的远端设置中,连接远程仓库时多人使用同一个用户名,该用户名为git远程仓库的拥有者
2. 不同开发者需使用不同的用户名连接时,会出现文件权限冲突,这是因为 git 仓库使用的是对象存储,每次改动会新增若干对象文件(具体对象文件在 /.git/objects 下),而新增的对象文件权限属性由系统控制,默认为755,即非文件拥有着无法进行写入(推送)。这里需要将 git 仓库下文件的默认权限设置为同组用户均可读写执行。具体方法是:
在初始化仓库时的语法:
git init --bare --shared[=(false|true|umask|group|all|world|everybody|0xxx)]
如果仓库已经启用,在远程仓库目录下更改 git 配置的语法:
git config core.sharedRepository [(false|true|umask|group|all|world|everybody|0xxx)]
实践:因本人需要设置该仓库下所有新生成的对象文件的默认权限为770,即拥有者和同组用户拥有读写执行权限,代码如下:
git init --bare --shared=0770
//初始化仓库时
git config core.sharedRepository 0770
//已启用后配置
Git 远程仓库默认权限问题的解决的更多相关文章
- git远程仓库创建及权限管理(一)单个项目
最近接手公司git权限管理,既然负责此事个人觉得应该深入学习下,不仅为当前工作也为进一步发展.网上查找了一番,找到了完整的教程,所以这里不再一步一步描述,具体链接已给出,本文只对操作过程中遇到的问题的 ...
- Linux下Git远程仓库的使用详解
Git远程仓库Github 提示:Github网站作为远程代码仓库时的操作和本地代码仓库一样的,只是仓库位置不同而已! 准备Git源代码仓库 https://github.com/ 准备经理的文件 D ...
- git远程仓库
git远程仓库: 目前我们使用到的 Git 命令都是在本地执行,如果你想通过 Git 分享你的代码或者与其他开发人员合作. 你就需要将数据放到一台其他开发人员能够连接的服务器上. 添加远程仓库: gi ...
- GIT 远程仓库:添加远程库、从远程库克隆
到目前为止,我们已经掌握了如何在Git仓库里对一个文件进行时光穿梭,你再也不用担心文件备份或者丢失的问题了. 可是有用过集中式版本控制系统SVN的童鞋会站出来说,这些功能在SVN里早就有了,没看出Gi ...
- Git -- 远程仓库简介
到目前为止,我们已经掌握了如何在Git仓库里对一个文件进行时光穿梭,你再也不用担心文件备份或者丢失的问题了. 可是有用过集中式版本控制系统SVN的童鞋会站出来说,这些功能在SVN里早就有了,没看出Gi ...
- Git Step by Step – (7) Git远程仓库(续)
上一篇文章介绍了Git远程仓库的一些使用,但是还是有些东西需要补充一下,所以有了这个续篇. .gitignore 前一篇中,我们介绍了Git的patch功能,当我们生成patch之后,"gi ...
- Git Step by Step – (6) Git远程仓库
前面文章中出现的所有Git操作都是基于本地仓库的,但是日常工作中需要多人合作,不可能一直都在自己的代码仓库工作.所以,这里我们就开始介绍Git远程仓库. 在Git系统中,用户可以通过push/pull ...
- 10.Git远程仓库
到目前为止,我们已经掌握了如何在Git仓库里对一个文件进行时光穿梭,你再也不用担心文件备份或者丢失的问题了.可是有用过集中式版本控制系统SVN的童鞋会站出来说,这些功能在SVN里早就有了,没看出Git ...
- 搭建git远程仓库
基于本地协议搭建git远程仓库 1.任意目录下执行git init -bare创建裸仓库,建议目录名称以.git结尾 2.共享此目录,windows下右键裸仓库目录,切换到共享面板设置完成即可获取共享 ...
随机推荐
- BZOJ 4236~4247 题解
BZOJ 4236 JOIOJI f[i][0..2]表示前i个字符中′J′/′O′/′I′的个数 将二元组<f[i][0]−f[i][1],f[i][1]−f[i][2]>扔进map,记 ...
- C++primer书店程序
#include <iostream> #include <string> #include <cassert> #include <algorithm> ...
- Ubuntu下用glade和GTK+开发C语言界面程序(一)
前言:对于大学中计算机系的每年暑假的课设有太多想说的,能从中学到非常多东西,当然不排除打酱油的,这些能够掠过哦,凡事都打酱油.人生也是打酱油的吧. 2333. 对于大三曾经的课设一般的要求都是用C写的 ...
- mysql-计算字段
一.计算字段 存储在数据库表中的数据一般不是应用程序所需要的格式 1.如果想在一个字段中既显示公司名,又显示公司的地址,但这两个信息一般包含在不同的字段中. 2.城市.州和邮编存储在不同的列中,但邮件 ...
- Android 提示: The connection to adb is down, and a severe error has occured.
今天早上打开Eclipse,一直提示 The connection to adb is down, and a severe error has occured,无法执行程序.重新启动Eclipse. ...
- 2014 百度之星 1003 题解 Xor Sum
Xor Sum Problem Description Zeus 和 Prometheus 做了一个游戏,Prometheus 给 Zeus 一个集合,集合中包括了N个正整数,随后 Prometheu ...
- litepal更好的操作sqlite3,配置与基本操作
litepal更好的操作sqlite3 配置 在app下的build.gradle中加入 创建litepal.xml配置 在app/src/main下面创建assets,新建litepal.xml & ...
- zzulioj--1776--和尚特烦恼2——第几个素数(技巧模拟)
1776: 和尚特烦恼2--第几个素数 Time Limit: 1 Sec Memory Limit: 128 MB Submit: 267 Solved: 100 SubmitStatusWeb ...
- redis动态修改参数
通过 config get 命令可以查看参数. 通过config set 可以修改某些参数 动态关闭redis的aof功能:(不要忘了也修改配置文件中的aof选项使其保持一致) 127.0.0.1:6 ...
- Debian9.5 系统配置FTP
FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”.用于Internet上的控制文件的双向传输.同时,它也是一个应用程序(Application ...