9

git プロジェクトを (たとえば github から) 複製し、最上位ディレクトリをグループごとに書き込み可能にしたいと考えています。

私はいくつかの異なることを試しました。まず、クローンを作成する前に umask を設定します。

$ umask
0002

私が作成したファイルは、グループごとに書き込み可能です

$ touch test
$ ls -l test
-rw-rw-r-- 1 user group 0 2012-05-17 09:32 test

今、私は試しますgit clone

$ git clone git@github.com:user/repo.git
Cloning into repo... [succeeds]

ただし、クローンディレクトリはグループで書き込みできません。

$ ls -ld repo
drwxr-xr-x 11 user group 4096 2012-05-17 09:32 repo

git init --shared=umask775 のアクセス許可を持つディレクトリで作成されたレポ (既にデフォルトである必要があります) で同じことを試しました。githubgit cloneにプッシュした後、同じ結果が得られます。

これは大したことではありません。チェックアウト スクリプトで chmod を実行できます。しかし、これを行うための正しい/組み込みの方法がある場合は、それが望ましいです。Git は、Ubuntu 11.04 のバージョン 1.7.4.1 です。

アイデアやリンクは大歓迎です。この投稿を見ましたが、 chmod を使用しています 、これについて他に多くを見つけることができませんでした。ありがとう!

4

2 に答える 2

3

cloneコマンド専用のグローバル「core.sharedRepository=group」を設定してみてください。

git -c "core.sharedRepository=group" clone git@github.com:user/repo.git
ls -ld repo/.git
drwxrwsr-x 8 user user 4096 Jul  4 22:16 repo/.git/
于 2012-07-04T20:17:10.780 に答える