Git 15©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
2017/02/05(日) 05:22:15.65ID:AxwpDksc0
ソースコード管理を行う分散型バージョン管理システム、Gitについて語ろう。

Git - Fast Version Control System
http://git-scm.com/

◆関連サイト
Pro Git - Table of Contents
http://git-scm.com/book/ja
Git入門
http://www8.atwiki.jp/git_jp/

◆前スレ
Git 13
http://echo.2ch.net/test/read.cgi/tech/1439563364/
Git 14
http://echo.2ch.net/test/read.cgi/tech/1457412803/
VIPQ2_EXTDAT: default:vvv:1000:512:----: EXT was configured
2017/04/27(木) 22:48:22.73ID:fnnc/aNx0
プルリクがマージされるまでは、そのプルリクのコミットを前提にしたコミットはプッシュしたら駄目なんでしょうか。
2017/04/27(木) 23:36:58.59ID:tj8IGx9np
はい
2017/04/27(木) 23:46:15.15ID:NhjwxeLX0
>>673
せやね
2017/04/27(木) 23:46:38.67ID:LgfSQc6k0
プルリク出した修正や追加を前提としたプルリクは最初のプルリクがリジェクトされたときに同時にダメになるわけだからよくない。
2017/04/27(木) 23:48:30.19ID:fnnc/aNx0
先のプルリクがマージされたら、後のプルリクのFile Changedが変わるかと思ったけど変わらなかった
pullしてマージしてpushし直したら後のプルリクのFile Changedだけの表示になった
gitてむつかしい
2017/04/27(木) 23:51:04.15ID:fnnc/aNx0
>>676
じゃあもうプルリクがマージされるまで手元に大事に置いておかないと駄目なんすね
2017/04/27(木) 23:52:25.88ID:NhjwxeLX0
ひとつのプルリクにまとめろよ
2017/04/27(木) 23:55:51.52ID:fnnc/aNx0
いや全然違う部分の修正なのでコミットは分けたい
開発初期段階なのにレビュー必須になってるから糞面倒臭い
2017/04/27(木) 23:57:40.89ID:NhjwxeLX0
違う部分なら別ブランチで作業すれば?
2017/04/28(金) 00:05:56.03ID:GsGj7Q3/0
違うけど先のプルリクの内容がないと成り立たない内容
開発初期段階なので

ていうか起動画面があって、その次の画面を作るとして
起動画面のコードが入らないと次の画面が出せない
起動画面と次の画面の開発はプルリク分けるべきでしょどう考えても

レビュー必須tっていうのも考え物じゃないんか
2017/04/28(金) 01:05:26.42ID:QW1G7ndP0
>>681
うるさいんだよ
2017/04/28(金) 01:14:42.86ID:N2bjQBDv0
プルリクしたのに反応がありません。
どうしたらいいですか
2017/04/28(金) 05:52:02.38ID:UuriWtk60
>>683
うるさいんだよ
2017/04/28(金) 07:35:34.34ID:U0vMWQrRM
>>684
うるさいんだよ
2017/04/28(金) 08:16:08.17ID:qt0nAsMaa
>>687
うるさいんだよ
688デフォルトの名無しさん (スプッッ)
垢版 |
2017/04/28(金) 08:27:59.57ID:Ac9Dm7bId
>>682
レビューが100%通ると仮定して、自分のリポジトリに対してどんどん作業を進めれば良いじゃ無いか
プルリクは一度に一つずつ作成して、それが通ってから次のコミットを使って次のプルリクを作る

多分問題はレビュー必須であることじゃなくて、プルリクを受け付けてもらえないと何か出来ないことがあるせいなんじゃ無いかな?
2017/04/28(金) 09:07:13.10ID:tVf4V7uN0
ブロッカーになってるレビュアーに仕事しろって言うだけでいいだろ
2017/04/28(金) 10:21:09.30ID:Dgx922ya0
ファイルの所有者情報がgitに保存されないんだけどなんで?
2017/04/28(金) 11:56:00.66ID:x0ERPJvPd
またかよ
2017/04/28(金) 13:44:37.20ID:yOScPVur0
スルーしろ
2017/04/28(金) 13:53:54.54ID:bxfxRGqXF
>>684
fork
2017/04/28(金) 16:04:50.37ID:L/lYixy2M
>>690
そんなくだらない情報をGit様は保存しない
2017/04/28(金) 16:38:13.67ID:Dgx922ya0
>>694
ファイルの日時が保存されないのはmakeを使う人用の制限で
しかたないと聞いたことがあるけどowner情報すらなくなるのは
ちょっと不便でしょう?
696デフォルトの名無しさん (エムゾネ)
垢版 |
2017/04/28(金) 17:12:15.86ID:Ux6XlWNuF
そうか
じゃあアクセス権も復活させろ
2017/04/28(金) 17:23:08.85ID:krqKI6DBH
>>695
例えばOSがLinuxだとして、そのサーバに存在しないユーザがownerだとして、fetch/pullしたときにどうなるのを期待してるの?
2017/04/28(金) 17:37:22.19ID:Dgx922ya0
>>697
存在しないownerなら別にそのままでいいんじゃね?
その程度の矛盾は臨機応変に対応すればいいよ
2017/04/28(金) 18:47:29.83ID:og/UncMo0
こういうのにアドホックに対応するのやめようぜ

「〇〇の情報がgitでは管理されない。具体的にこれこれこういう状況で困る。解決策はないか」だったら考えようがあるからOKだけど、

「〇〇の情報が保存されない。なんで?臨機応変にやればいいのに」とかって言うのは自分の抱えている問題がなんなのか明確になってないのに
思いつきで色々注文付けてくる発注者と一緒で相手すると時間を無限に消費されるだろ

>>698
ということで、困ってるならどういう状況で困ってるのか説明してくれない?困ってないなら保存されなかろうがどうでもいいよね
2017/04/28(金) 20:27:24.37ID:DqM8Rdgf0
またお前か
2017/04/29(土) 00:52:04.72ID:YJIcj+eB0
fileの所有者情報って500番とかそういうの?
2017/04/29(土) 01:45:55.76ID:u4T6eHTd0
そうだよ。Windowsだと所有者は世界で唯一のUUIDになる
だから個人を特定できる
2017/04/29(土) 02:02:46.58ID:u4T6eHTd0
そういやさ、githubでブラウザからマージする時の
名前/メールアドレスって変更できないの?
2017/04/29(土) 02:29:02.41ID:b6f0cr3Ad
>>703
スレ違い
705デフォルトの名無しさん (ワッチョイ)
垢版 |
2017/04/29(土) 08:07:55.19ID:uOYq6SYB0
あなたがコミットしたのだから、そのコミットの所有権はあなたに有ります
あなたがチェックアウトしたのだから、そのコミットの所有権をあなたに移すことが出来るようになります
ファイルシステムでの所有権?
それはあなたが使ってるファイルシステムに要望してください
2017/04/29(土) 10:20:27.70ID:VKbKBamV0
所有者情報ってのはOSで管理されてるものだからそういうのはgitは見てないんじゃないの
バイナリエディタでファイル開いても所有者情報とか編集日時とか格納されてないでしょ
2017/04/29(土) 10:29:53.49ID:u4T6eHTd0
例えば所有者情報を、特定の誰かにしてしまえば
意図的にそのユーザーのデータを壊せるでしょ?
便利じゃね?
2017/04/29(土) 13:08:26.58ID:wQSInbL00
>>706
例えばtarで圧縮したときはファイルの日付や所有者まで全部保存される
WindowsでもLinuxでもね
ファイルの中身と同じくらい重要な情報で、だからきちんと管理されてる
いらないってんなら全部Cドライブ直下にでも/直下にでもずらりと置けばいい
2017/04/29(土) 13:10:29.98ID:wQSInbL00
>>706
あとね、バイナリエディタでファイル開いてもファイル名とか格納されていないよ
だから格納されてるされてないで重要度は判断はできない
2017/04/29(土) 13:14:56.03ID:u4T6eHTd0
>>708
だからtarを使えば良いのでは?

ソースコードのバージョン管理をしたい時に
tar使っても過去の履歴がないのは、tarの機能が低いんじゃなくて
アーカイブツールだから。専用のソフトを使うのが一番適切
711デフォルトの名無しさん (JP)
垢版 |
2017/04/29(土) 14:52:55.32ID:D/W8thCKH
所有者やアクセス権整理するスクリプト書いて一緒にコミット汁
2017/04/29(土) 15:15:45.56ID:uMWscgROM
>>708
Linux で作成して Windows で展開しても所有者が保存される?
2017/04/29(土) 18:08:58.31ID:awogmL8Y0
秋田
2017/04/29(土) 23:12:33.25ID:O2AdtwVJ0
>>708
/直下にファイルをずらずら置いておいても困らない例なんていくらでもあるけど
Gitを何に使いたいのかな?具体的な利用方法を言ってみてよ
他のツールでできることがGitでは出来ない、ではなく、ユースケースで言ってみて

言えないならさようなら
2017/04/29(土) 23:37:08.61ID:FuTLeYzk0
またこいつか
2017/04/29(土) 23:38:53.95ID:jlBbI1A10
tarでファイルに他人に所有権のファイルが有った時、
自分のホームディレクトリ以下に展開した時
他人のファイルが出来ちゃうの?
それって危険だよね。tarの脆弱性か
717デフォルトの名無しさん (ワッチョイ)
垢版 |
2017/04/30(日) 00:39:57.06ID:stNMbg2v0
tarはファイルの所有者情報を記録するけど
普通は、展開するときに所有権情報まで一緒に展開しない
展開したユーザの所有権で展開される

システム管理者がスーパーユーザ権限で作業するときぐらいだよ
記録された所有者情報を使うのは
2017/04/30(日) 01:22:11.27ID:9gQ91qOn0
>>714
なんのためにディレクトリがあるのかわかってる?
gitはディレクトリ情報は保存するぞ
2017/04/30(日) 03:52:31.39ID:qsFul2YM0
言えないからさようならw
2017/04/30(日) 04:25:21.95ID:GoGMStRX0
>>718
そうやって煽ってもいい加減つまんないぞ
2017/04/30(日) 11:09:52.78ID:CJ1bT41aM
どうみても >>714 の方が煽りだろ
2017/04/30(日) 11:38:11.27ID:U/xvgYsy0
タイムスタンプと寸分違わず同じ流れでよく飽きませんね
2017/04/30(日) 12:20:34.09ID:VPr4LyhYH
この程度で飽きるならとっくに2ちゃん辞めてる
2017/04/30(日) 13:39:58.71ID:STBPt1Jg0
そもそもタイムスタンプ問題は何も解決していない
725デフォルトの名無しさん (ワッチョイ)
垢版 |
2017/04/30(日) 13:46:17.20ID:kmaYjpOe0
解決もなにもそんな問題自体ないから
2017/04/30(日) 13:47:51.58ID:STBPt1Jg0
そういうことに、したいのですね。

 ヘ_ヘ
ミ・・ ミ  
(   )〜 あさから よかいち
727デフォルトの名無しさん (JP)
垢版 |
2017/04/30(日) 14:11:44.10ID:VPr4LyhYH
git checkout -b void
2017/04/30(日) 14:12:49.53ID:ubyMNxSN0
git branch -d void
2017/04/30(日) 14:53:45.28ID:stNMbg2v0
error: The branch 'void' is not fully merged.
If you are sure you want to delete it, run 'git branch -D void'.
2017/04/30(日) 14:56:49.20ID:ubyMNxSN0
git branch -D void
2017/04/30(日) 22:29:42.03ID:kMpmo3Sg0
rebaseして失敗したら追加したファイル全部なくなったんですが、復旧できないですか?
2017/04/30(日) 22:41:16.00ID:aHkcW8aG0
rebase --abortすりゃいいだろ
すげー楽だよ。gitは失敗が怖くない。
2017/05/01(月) 10:20:41.89ID:ujE6Bxy4H
>>698
例えば、creatorがWindowsユーザだったらどうすんの?
2017/05/01(月) 11:23:05.58ID:hzoMRY/LH
>>732
ありがとう
2017/05/01(月) 11:23:48.63ID:hzoMRY/LH
>>733
umaskじゃね
2017/05/01(月) 11:46:07.72ID:ujE6Bxy4H
>>735
意味がわからない
737デフォルトの名無しさん (ワッチョイ)
垢版 |
2017/05/01(月) 16:39:04.61ID:cTnhqS2C0
どうすんの?じゃなくて、なんですんの?を誰も言わない所が共通してるね。
2017/05/01(月) 16:50:48.82ID:ujE6Bxy4H
なんでは明らかでしょ
それを知りたいから
739デフォルトの名無しさん (ワッチョイ)
垢版 |
2017/05/01(月) 16:57:26.26ID:hDYaKlR40
そうだね
タイムスタンプはどうでもいいけど
アクセス権は元に戻ってほしい
2017/05/01(月) 17:01:09.54ID:ujE6Bxy4H
ownerとpermissionをごっちゃにしてるんすかね
741デフォルトの名無しさん (ワッチョイ)
垢版 |
2017/05/01(月) 18:17:41.10ID:cTnhqS2C0
>>738
所有者を復元するという事の何を知りたいの?実装方法?手段が目的な人?
2017/05/01(月) 18:40:03.38ID:UnFVzn0bp
そんなことより次のネタ予想しようぜ
2017/05/01(月) 18:40:27.76ID:UGeh3nSfM
「どうしてそうしたいの?」とやたらに理由聞きたがる人が出てくるけど
彼らはなにがしたいんだろうか。
第三者が理由を聞きたがる理由がわからない
2017/05/01(月) 18:41:49.90ID:ujE6Bxy4H
>>741
何言ってるんでしょう、この人

誰も目的を聞かないというから、目的は明確でしょうと言ってるのに
2017/05/01(月) 18:42:03.79ID:tRarccr20
そんなことしても何の役にも立たないのになんでやりたがるんだ?
って言うのをちょっとオブラートに包んだだけだろw
746デフォルトの名無しさん (ワッチョイ)
垢版 |
2017/05/01(月) 19:19:27.44ID:63wSkuUp0
北朝鮮に何でミサイル撃つんだって聞く方が判り易い
2017/05/02(火) 01:00:12.88ID:NO5OoAYe0
>>743
「〇〇の機能が欲しい」というのは、大抵「□□という差し迫ったシチュエーションで問題を解決したいから、〇〇の機能が欲しい」という形に言い直せて、
そして、「□□での問題解決するには、実は〇〇という機能でなく△△という機能を使ったほうがもっと良い」ということが往々にしてあるから。

というか、「〇〇の機能」の実装にあたって、実際には〇〇の機能をただ追加するだけじゃ済まなくて、既存の☆☆機能との整合性はどうするか、とかそういう部分も考えなくちゃいけないから、
仮に新機能を実装するとしても、「どうしてそうしたいの?」という問いは重要であろう

建築家が「トイレが10個ある家にして」と注文されたら、どうして10個必要なのか聞くでしょ。そして理由によって10個をどのように配置するか、トイレの内装なり便器なりを細かく決めていくでしょ。
それと同じことだよ。

自分にとっては自明だと思っているのかもしれないが、普通にどういう状況でその機能が欲しいかわからないから聞いているだけなんだけどな。

Gitはファイルシステムとかアーカイバ、バックアップツールとしてデザインされているわけじゃないから、それらの代替として使おうとしたら色々問題があって当たり前
それでもGitを使いたいんだとすれば、それらの用途にGitを使う意味を何か見出しているんだと思うんだけど、そこをどういう風に把握しているのかわからなければ解決策も考えられないよ
Git以外のもっと便利なツールを紹介できるかもしれないし。
Git含めどんなツールも銀の弾丸ではないんだからあらゆるものにケチつけようと思えばケチ付けられるわけで。だけどそれは生産的な行為だとは思えない。
748デフォルトの名無しさん (ワッチョイ)
垢版 |
2017/05/02(火) 04:27:52.05ID:A1aerigX0
>>747
マジメかっ
749デフォルトの名無しさん (アウアウウー)
垢版 |
2017/05/02(火) 09:40:45.97ID:lmunJWcIa
>>747
gitが本気で便利なら3行でまとまるはず
2017/05/02(火) 09:50:02.99ID:Spp7QSKK0
> gitが本気で便利なら3行でまとまるはず
どういう理屈で?
2017/05/02(火) 10:13:57.00ID:icdrLzQNH
>>747
ファイルごとに履歴を先頭まで遡れば誰がaddしたのかわかるわけで、家にトイレ10個レベルの違和感わない
2017/05/02(火) 11:11:09.66ID:fJzwGtxI0
>>747
ケチをつけずに質問にだけ答えろよ
お前の方が口先ばかりで生産性無いぜ
753デフォルトの名無しさん (オッペケ)
垢版 |
2017/05/02(火) 12:16:53.78ID:zy/cUdw9r
教えたがりの屁理屈w
754デフォルトの名無しさん (スプッッ)
垢版 |
2017/05/02(火) 12:20:00.45ID:QzQj3NgLd
>>751
マージした内容は行単位で辿れるのに所有権はファイル単位なのは整合性が取らなくないか?
またgitのlogはファイルの履歴ではなくファイルの内容の履歴を追う
この機能ともファイルの所有権の管理はそぐわない
755デフォルトの名無しさん (スプッッ)
垢版 |
2017/05/02(火) 12:21:04.39ID:QzQj3NgLd
>>752
第三者が理由を知りたがるのは何故か?という質問に見事に答えてるだろ
756デフォルトの名無しさん (スプッッ)
垢版 |
2017/05/02(火) 12:22:22.79ID:QzQj3NgLd
>>749


2017/05/02(火) 12:56:47.50ID:icdrLzQNH
>>754
> またgitのlogはファイルの履歴ではなくファイルの内容の履歴を追う
git logでは"Author"が表示されるが?

> この機能ともファイルの所有権の管理はそぐわない
管理しようという話じゃない
念のため言っておくが、「ファイルの所有権」の定義の話をしたいわけでもないぞ

git commitの日付を復元したいとか、ファイルの最終更新日を復元したいとかいろいろ
人によって異なるだろうが、それは単にそれを知りたいからだ

なんで人がそうしたいのか、お前の好奇心を満たさなきゃらなないんだ?
2017/05/02(火) 13:45:19.47ID:QUjyp23BM
>>757
そのAuthorはファイルの所有者じゃないだろう
2017/05/02(火) 14:01:28.44ID:icdrLzQNH
>>758
えーと、git cloneしたら、ファイルの「所有者」は自分になるとかそういうこと言いたいんでしょうか
そういうつまんない議論したくないんですが
760デフォルトの名無しさん (ブーイモ)
垢版 |
2017/05/02(火) 14:57:07.98ID:ciC4yh5PM
>>759
git log で表示されるauthorはファイルのownerでは無くて
コミットした人のconfigで設定されていたauthorが表示されますよね?
2017/05/02(火) 14:59:04.67ID:fJzwGtxI0
>>759
ファイルの所有者の話から始まっているんですよ
口をはさむなら最初から読んでください
762デフォルトの名無しさん (ブーイモ)
垢版 |
2017/05/02(火) 15:05:45.32ID:ciC4yh5PM
>>761
おまえファイルの内容の履歴の意味がわかってないだろ
763デフォルトの名無しさん (スプッッ)
垢版 |
2017/05/02(火) 15:12:56.04ID:QzQj3NgLd
>>757
git blame
してごらん
各行毎にどのコミットに由来するかが表示される

gitにとってコミットが責任の単位なんだよ
2017/05/02(火) 18:08:53.38ID:8dDxRnsR0
>>339
重い
調べたらgitkrakenっていう別ソフトがあるのでこれから試してみる
https://www.gitkraken.com
2017/05/02(火) 21:23:12.72ID:1BL9yepd0
SourceTree2.0になって軽くなったんじゃなかったっけ
2017/05/03(水) 00:02:44.72ID:/FJiuNZS0
バージョン管理で重要なのはファイルの所有者じゃなくて
コミットした内容の所有者というか修正者である。

そのソースコードを誰にあげましたとかいらない。
誰が修正しましたかが重要。しかもメールアドレス付きでね。
重要ならば署名までつけられるしすごいことだよ。

という事で話は終わりじゃね?
767デフォルトの名無しさん (ワッチョイ)
垢版 |
2017/05/03(水) 01:16:42.02ID:Bt9tKgiK0
masterとリリース用って分けるのが普通?
768デフォルトの名無しさん (ワッチョイ)
垢版 |
2017/05/03(水) 01:40:20.24ID:jU3FK0a/0
>>767
運用によるgit flowとかgithub flowとかでググれ
2017/05/03(水) 01:47:58.83ID:R+sft0vk0
>>764
どんな塩梅? 日本語使える?
2017/05/03(水) 02:05:05.99ID:Bh8bh08M0
>>757
好奇心ではない、適切な解決策を見つけるために理由を聞いているのだ、と明確に書いたつもりなのだけども。
所有者を保存しておきたい理由が一般的なソースコードのバージョン管理の必要性からはわからず、なぜ保存したいのかわからなければ適切な解決策が提案できないとも書いているんだけども

目的の為に手段を考えるべきで、所有者の保存というのは手段にすぎない。そしてその手段は特にソースコードのバージョン管理を行うという観点からして素直に実装できるものではない。
その目的が「人によって異なる」時点で適切な設計を定義するのが難しくなるだろ。ツールの機能として実装するには、どんな人でも大抵同じ理由でその機能が欲しい、とならなければ細部まで設計できない。
2017/05/03(水) 05:12:21.76ID:B4kcC+3m0
筋が悪いことを延々と主張する人っているんだな
2017/05/03(水) 11:28:03.91ID:xkQWxFrsd
sidやuidのことなら、それはマルチユーザー環境やファイルサーバーなんかでアクセス制御に関連して備わっているもなので、趣旨の異なるgitで保持してもゴミ情報
単なる数字列を見て何ができるんだか
773デフォルトの名無しさん (ワッチョイ)
垢版 |
2017/05/03(水) 14:11:26.51ID:eMP4zE8M0
guidは糞
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況