バージョン管理システムについて語るスレ10 (641レス)
上下前次1-新
233(2): 2014/03/11(火)12:18 AAS
>>229
>サーバーの OS 上でファイルシステムのパーミッションを設定するとよいでしょう。
なんだから
そこまでやったらgitでは何もやることないんじゃないの
234: 2014/03/11(火)12:34 AAS
>>233
ネタなのかマジで言ってるのかよくわからん (w
ひょっとしてベアリポジトリの存在を知らないのか?
235(1): 2014/03/11(火)12:37 AAS
freebsdの開発チームはがsubversionを採用したんだよな
理由はsubversionの方が合ってるからって
236: 2014/03/11(火)12:39 AAS
>>233
だから具体的にどうやるか書け
237(1): 2014/03/11(火)12:47 AAS
いやおれhg使いだし
サブモジュールのディレクトリにパーミッション設定して終わりじゃないのか
238: 2014/03/11(火)12:58 AAS
>>237
何いってんの?
239(1): 2014/03/11(火)13:03 AAS
煽るだけのは邪魔だからどっか行けよ
240: 2014/03/11(火)13:32 AAS
>>235
Linux の世話になんかならんぞ、っーのもあるんじゃね?
まあ便利ならなんでも取り込む Linux/git に対して、ポリシーに沿わないものは取り込まない FreeBSD/Subversion って感じかな。
241: 2014/03/11(火)13:36 AAS
いやおまえこそ
242: 2014/03/11(火)13:42 AAS
GPLを排除したいFreeBSDにしてみれば
メジャーなDVCSのGit、Hg、Bzrが軒並みGPLな現状じゃ
Apacheライセンスな非DVCSのSubversionを選ぶざるを得ないってとこか
243: 2014/03/11(火)13:46 AAS
>>239
良く分かってないのに適当な回答かまして場をかき乱す奴よりはまし。
244(9): 2014/03/11(火)13:58 AAS
>>229
gitでの話。
drwxrwx--x dev-group:dev-group /proj ← ここ以下をgitで管理
drwxrwx--x dev-group:dev-group /proj/.git ← gitデータディレクトリ
drwxrwx--x dev-group:dev-group /proj/src/app/
drwxrwx--- lib-dev-group:lib-dev-group /proj/src/lib/
drwxrwx--x dev-group:dev-group /proj/src/else
drwxrwx--x dev-group:dev-group /proj/else
dev-group = dev1, dev2, co-dev1
lib-dev-group = dev1, dev2
こうすればいい。お前が言ったことを分かりやすく図にしただけ。
(これだと新規ファイル作成時に問題があるがね。気づいてないでしょ?慣れてないことするからw)
gitは普通のディレクトリなのだから、同じようにやればいいと言ってる。
これが下記のgitの使い方の一つとして述べられてる「ファイルベールのリポジトリ」
この欠点はdev-groupはgitを使えるが、それ以外はgitを使えないということと
gitを使う時に多少考える必要が有ること、gitの本領を発揮できないということ。
だがgitを使いたくなった時は、ただのディレクトリではダメな作業が
できたということなので即刻ディレクトリをやめろという話になる。
4.1 Git サーバー - プロトコル
外部リンク:git-scm.com
利点
ファイルベースのリポジトリの利点は、シンプルであることと既存のファイルアクセス権や
ネットワークアクセスを流用できることです。チーム全員がアクセスできる共有ファイルシステムがすでに存在するのなら、
リポジトリを用意するのは非常に簡単です。ベアリポジトリのコピーをみんながアクセスできるどこかの場所に置き、
読み書き可能な権限を与えるという、ごく普通の共有ディレクトリ上での作業です。
245: 2014/03/11(火)14:07 AAS
linuxっていつまで経ってもaclベースのアクセス制御普及しないよな
246(1): 2014/03/11(火)14:08 AAS
>>244
> この欠点はdev-groupはgitを使えるが、それ以外はgitを使えないということと
どういうこと?co-dev1がgitを使えないんだったら意味ないじゃん
247(1): 2014/03/11(火)14:11 AAS
>>244
なんだローカルの話か。なら最初から
cd proj
git init
って言えば何を言いたかったのか全員がわかったのに。
ちなみに、お前以外は全員リモートサーバを想定してると思うよ。
248(1): 2014/03/11(火)14:16 AAS
>>244
俺gitの知識はほぼゼロなんだけど、それでco-dev1はgit clone/push/pullのどれも支障が無いのか?
249: 2014/03/11(火)14:17 AAS
>>246
> どういうこと?co-dev1がgitを使えないんだったら意味ないじゃん
dev-groupはgitつかえるよ?
git使いたいなら、最初からディレクトリは
ダメですねって話ですよね?
だ〜か〜ら、共有ディレクトリを使う方法(>>229)は
欠点があるって言ってるんだよ。
普通にgitを使えよ。
共有ディレクトで権限管理するのはやめなさい。
つまり、>>229のやり方をやめなさいってことだよ。
250(1): 2014/03/11(火)14:19 AAS
>248
> 俺gitの知識はほぼゼロなんだけど、それでco-dev1はgit clone/push/pullのどれも支障が無いのか?
共有ディレクトリを使った方法(>>229の方法)を使っている以上無理。
最初っから、共有ディレクトリを使った方法(>>229)は欠点だって言ってるの。
でもgitはただのディレクトリだから、ディレクトリを使った方法(>>229)でも
できるという話。git化することで何も失われていない。
251(1): 2014/03/11(火)14:20 AAS
>>247
全員がとかいってるけど、
実は「お前が」だよ。
お前一人がわからなかった。
勝手に他人もいっしょにするなよ。
252(5): 2014/03/11(火)14:32 AAS
>>250
え?>>144に対して、
>>213
> gitは普通のディレクトリを使うので、
> 一部のフォルダを特定の人/グループに見せないかいうのは
> ディレクトリと全く同じ設定をすればよい。
なんでしょ?
> 共有ディレクトリを使った方法(>>229の方法)を使っている以上無理。
ってどういうこと?
> でもgitはただのディレクトリだから、ディレクトリを使った方法(>>229)でも
> できるという話。
できるって何が?
> git化することで何も失われていない。
ちなみに、>>244のディレクトリ構成を実際に作って、co-dev1でgit cloneしてみたら、/proj/src/libも取得できちゃったんだけど。
俺はgitの知識がほぼゼロなんで、なにか間違ってるかもしれないけど。
253: 2014/03/11(火)14:38 AAS
>>251
お前一人が勘違いしている可能性は考慮しないのか
254(2): 252 2014/03/11(火)14:43 AAS
ちなみに、俺がやったこと。
/path/to/proj以下に>>244のディレクトリ構成を作って、
cd /path/to/proj
git init
git add *
git commit -a
su - co-dev1
cd ~/src
git clone /path/to/proj
これで、proj/src/lib以下が取得できてしまったんだが、これを取得できないようにするにはどうしたらいい?
255(1): 2014/03/11(火)14:46 AAS
>>252
お前頭悪いなw
共有ディレクトリを使った方法では、
gitを使うことに制限が出る。
無理というのは、その制限の話だ。
gitを使いたくなっただろ?
ちゃんと使おうと思うなら
共有ディレクトリ(>>229)はやめだ。
だが共有ディレクトリ程度でできるレベルであれば
>>244を使えば良い。
256(1): 2014/03/11(火)14:48 AAS
>>254
お前は、パーミッションも読めないのかw
>>244のdrwxrwx--x とかその後のdev-groupとか
意味わかってるか? 本気で馬鹿なのか?
257: 252 2014/03/11(火)14:49 AAS
>>255
ちょっと何を言いたいのか良くわからない。
> 無理というのは、その制限の話だ。
要するに、
>>144
> プロジェクト無いの一部のフォルダを特定の人/グループに見せないとか、更新禁止にするだけだよ?
はできるの?できないの?
> gitを使いたくなっただろ?
いや、svnで満足してるし。
gitはgithubでcloneするくらいでいい。
258: 2014/03/11(火)14:53 AAS
>>256
> >>254
> お前は、パーミッションも読めないのかw
再現できてると思うけど。
ls -lR
.:
合計 4
drwxrwxr-x 4 user1 grp1 4096 3月 11 14:20 2014 src
./src:
合計 8
drwxrwxr-x 2 user1 grp1 4096 3月 11 14:20 2014 app
drwxrwx--- 2 user1 wheel 4096 3月 11 14:20 2014 lib
./src/app:
合計 4
-rw-rw-r-- 1 user1 grp1 6 3月 11 14:20 2014 aaa.c
./src/lib:
合計 4
-rw-rw-r-- 1 user1 wheel 8 3月 11 14:20 2014 bbb.c
uid=500(usr1) gid=500(usr1) 所属グループ=500(usr1),10(wheel),505(grp1)
uid=503(usr2) gid=507(usr2) 所属グループ=507(usr2),505(grp1)
259: 2014/03/11(火)14:54 AAS
>>244
ねえねえ、マジで言ってるの?
git 脳って git には詳しいのかと思ってたら、単なるアホだったのか (w
それ、自分に対する権限しか設定してないから、clone されたら丸見えだよ。
もし、反論するなら事前にベアリポジトリについてググってこい。
まあ、ググって理解したら恥ずかしくて出てこれないと思うが。
260(2): 2014/03/11(火)14:58 AAS
はぁ? なんでcloneするんだよ。
そこから間違ってるじゃないかw
cloneした時点でお前の間違いが明らかになってるんだが。
ファイルベースのリポジトリは最初に用意する人が
cloneするのみ。ファイルベースのリポジトリは
そのディレクリをみんなで共有する仕組みだよ。
最初っからディレクトリを使った方法と
全く一緒だって言ってるじゃないか。
261(1): 2014/03/11(火)15:00 AAS
>>260
複数人で作業すること前提なんですが
262: 2014/03/11(火)15:00 AAS
あたりまえだけど、
drwxrwx--x dev-group:dev-group /proj/.git ← gitデータディレクトリ
こうなってるので、dev-group以外の人はgit cloneできない。
なぜならファイルそのものにアクセス出来ないから。
上下前次1-新書関写板覧索設栞歴
あと 379 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ
ぬこの手 ぬこTOP 0.013s