将GIT存储库更改为共享

时间:2011-09-01 09:39:16

标签: git bash

Git允许在一个组中创建一个共享存储库:

git --bare init --shared=group

但是 - 如何将现有存储库更改为共享?我不想重新git-init它。

2 个答案:

答案 0 :(得分:15)

根据documentation

  

- 共享[=(假|真|的umask |组|全部|世界|大家| 0XXX)]

     

指定git存储库将在多个用户之间共享。   这允许属于同一组的用户进入该存储库。   指定时,配置变量“core.sharedRepository”即可   $GIT_DIR下的文件和目录是使用请求创建的   权限。未指定时,git将使用umask(2)报告的权限。

因此,要根据自己的喜好更改权限chmod,并相应地set the core.sharedRepository in git config

git config core.sharedRepository true

答案 1 :(得分:10)

使私人裸仓库分享:

  1. 修改配置并将sharedRepository = group添加到core部分
  2. 修复回购内部的权限:
    • chgrp -R target-group .
    • find . -type d | xargs chmod g+ws
    • find refs -type f | xargs chmod g+w