ソースコード管理を行う分散型バージョン管理システム、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 16©2ch.net
https://mevius.5ch.net/test/read.cgi/tech/1502726047/
Git 17
https://mevius.5ch.net/test/read.cgi/tech/1599016710/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
探検
Git 18
レス数が1000を超えています。これ以上書き込みはできません。
1デフォルトの名無しさん (ワッチョイ 9ce4-E6ke)
2022/04/23(土) 03:25:45.27ID:HOOXt/T30983デフォルトの名無しさん (ワッチョイ 09e4-chQ5)
2022/11/06(日) 16:36:01.68ID:az1H5JFk0 前スレは消費に1年半かかってるのに、このスレは半年ぐらいで終わりだな
次スレ立ててみるけど失敗したらゴメン
次スレ立ててみるけど失敗したらゴメン
984デフォルトの名無しさん (ワッチョイ 09e4-chQ5)
2022/11/06(日) 16:41:37.94ID:az1H5JFk0985デフォルトの名無しさん (ワッチョイ 617b-8+ss)
2022/11/06(日) 19:18:45.16ID:OfQ8ymDc0 相変わらずお前ら盛大に勘違いしてるが、とりあえず、
× Gitはパッチ管理ツールである
○ Gitはパッチ適用ツールである
○ Gitはパッチ記録ツールである
としよう。管理は出来てない。何を管理すべきか分かってないから。
commitメッセージなんてただのラベルに過ぎない。
× Gitはパッチ管理ツールである
○ Gitはパッチ適用ツールである
○ Gitはパッチ記録ツールである
としよう。管理は出来てない。何を管理すべきか分かってないから。
commitメッセージなんてただのラベルに過ぎない。
986デフォルトの名無しさん (ワッチョイ 617b-8+ss)
2022/11/06(日) 19:19:20.86ID:OfQ8ymDc0 例えば今回俺が送った再現コード、あれはどこに配置されるのだ?
>>977の通り、「何故この変更を行ったのか」の完全情報がそこにある。
まさか捨てたりしないよな?
バグパッチに於いて、重要な物から順に、
1. そのバグを修正するコード
2. そのバグを再現するコード
:
10000, commitメッセージ
だ。どんなに丁寧にcommitメッセージを書いたところで、「それ、あなたの感想ですよね?」でしかない。
肝心なところを書き間違ってるかもしれないし、信用も出来ない。
この点、再現コードは情報が完全で、全ての情報を過不足無く含んでいて、曖昧さもない。
だからcommitメッセージの情報価値なんて再現コードと比べたらゴミ以下で、
再現コードに対してのリンクで十分なんだよ。つまり、
○年○月○日に○○から送られてきた○○のバグ(メモリリーク)を修正する。
詳細はXXXX
で、XXXXのところ、Git流ならSHA1ハッシュで、
その中に再現コードと詳細、今回なら全員のメールの全文を入れておくのがバグ管理だよ。
これで、「何故この変更を行ったのか」の完全情報が保たれる。
そして、再現コードは今後ずっとregressionテストに使う資産にする。
そうすれば、少なくとも過去と同じバグはリリース前に見つかる。
>>977の通り、「何故この変更を行ったのか」の完全情報がそこにある。
まさか捨てたりしないよな?
バグパッチに於いて、重要な物から順に、
1. そのバグを修正するコード
2. そのバグを再現するコード
:
10000, commitメッセージ
だ。どんなに丁寧にcommitメッセージを書いたところで、「それ、あなたの感想ですよね?」でしかない。
肝心なところを書き間違ってるかもしれないし、信用も出来ない。
この点、再現コードは情報が完全で、全ての情報を過不足無く含んでいて、曖昧さもない。
だからcommitメッセージの情報価値なんて再現コードと比べたらゴミ以下で、
再現コードに対してのリンクで十分なんだよ。つまり、
○年○月○日に○○から送られてきた○○のバグ(メモリリーク)を修正する。
詳細はXXXX
で、XXXXのところ、Git流ならSHA1ハッシュで、
その中に再現コードと詳細、今回なら全員のメールの全文を入れておくのがバグ管理だよ。
これで、「何故この変更を行ったのか」の完全情報が保たれる。
そして、再現コードは今後ずっとregressionテストに使う資産にする。
そうすれば、少なくとも過去と同じバグはリリース前に見つかる。
987デフォルトの名無しさん (ワッチョイ 617b-8+ss)
2022/11/06(日) 19:20:02.27ID:OfQ8ymDc0 こうなってないだろ。一回パッチ当てて動きました!満足です!じゃないんだよ。
繰り返すが、commitメッセジーをいくら丁寧に書いても意味無い。
再現コードに比べたら本当にゴミ以下。
逆に、再現コードに辿り着けるのなら、後はラベルが正しく付いてれば十分なんだ。
それ以上の情報は、commitメッセージのテキストではなく、
再現コードとバグ報告=完全情報を見た方がいいから。
で、GitHubはまあこれに近いよ。
そもそもバグ報告自体Webだし、少なくともIssueからバグの完全情報に当たれる。
Gitはどうなの?
今回の俺と同様の、過去のバグ報告の再現コードを生かせてるのか?
ならそういうディレクトリがあって、
bug_patches/XXXXXなハッシュが名前になってるディレクトリに再現コードその他がブチ込まれてて、
出荷前(というのもおかしいが)には全部一通り通せ、となってるはずだけど、
どう見てもそうなってないでしょ。
パッチ当てたから満足です、で終わってる。
こんなのでバグが収束するはずがない。
同じ連中が書いてるのだから、放置したら同レベルのバグを繰り返す。
だから本来は何故こんなバグが発生したのか?からコード構造を見直して、
そもそもそうならないようにするのだけど、そういう学びもないし、(だから基本すら出来てない)
regressionテストのネタにもしないのだから、今後ともバグだらけだよ。
ああ、Gitの達人揃いだから、「記録」は出来てるのだろうよ。だけどそれは「管理」ではない。
ただ、これがバザール流だ!と来るなら、はーそうですかー(棒)だよ。
目も手も数が違うし、俺には何が最適か分からんし。
繰り返すが、commitメッセジーをいくら丁寧に書いても意味無い。
再現コードに比べたら本当にゴミ以下。
逆に、再現コードに辿り着けるのなら、後はラベルが正しく付いてれば十分なんだ。
それ以上の情報は、commitメッセージのテキストではなく、
再現コードとバグ報告=完全情報を見た方がいいから。
で、GitHubはまあこれに近いよ。
そもそもバグ報告自体Webだし、少なくともIssueからバグの完全情報に当たれる。
Gitはどうなの?
今回の俺と同様の、過去のバグ報告の再現コードを生かせてるのか?
ならそういうディレクトリがあって、
bug_patches/XXXXXなハッシュが名前になってるディレクトリに再現コードその他がブチ込まれてて、
出荷前(というのもおかしいが)には全部一通り通せ、となってるはずだけど、
どう見てもそうなってないでしょ。
パッチ当てたから満足です、で終わってる。
こんなのでバグが収束するはずがない。
同じ連中が書いてるのだから、放置したら同レベルのバグを繰り返す。
だから本来は何故こんなバグが発生したのか?からコード構造を見直して、
そもそもそうならないようにするのだけど、そういう学びもないし、(だから基本すら出来てない)
regressionテストのネタにもしないのだから、今後ともバグだらけだよ。
ああ、Gitの達人揃いだから、「記録」は出来てるのだろうよ。だけどそれは「管理」ではない。
ただ、これがバザール流だ!と来るなら、はーそうですかー(棒)だよ。
目も手も数が違うし、俺には何が最適か分からんし。
988デフォルトの名無しさん (ワッチョイ 617b-8+ss)
2022/11/06(日) 19:20:37.38ID:OfQ8ymDc0 ちなみにchromeの連中は気持ち悪いほどregressionテストしてるぞ。
本来は、ああするべきなんだろうよ。
regressionテスト自体はタダ(スクリプトで自動実行)だからね。
バグ「管理」というのなら、原因を究明して、少なくとも同じバグが出ないようにしないといけない。
それはcommitメッセージをいくら丁寧に詳細に書いても、達成出来るものではない。
分かりやすく言うとな、「体調管理」と言われれば、少なくとも同じ原因で風邪を引かないようにするだろ。
なら、「バグ管理」なら、最低限レビューしてregressionテストしないと駄目だよ。
それはcommitメッセージ云々では出来ない。だからパッチ「適用」「記録」ツール。
本来は、ああするべきなんだろうよ。
regressionテスト自体はタダ(スクリプトで自動実行)だからね。
バグ「管理」というのなら、原因を究明して、少なくとも同じバグが出ないようにしないといけない。
それはcommitメッセージをいくら丁寧に詳細に書いても、達成出来るものではない。
分かりやすく言うとな、「体調管理」と言われれば、少なくとも同じ原因で風邪を引かないようにするだろ。
なら、「バグ管理」なら、最低限レビューしてregressionテストしないと駄目だよ。
それはcommitメッセージ云々では出来ない。だからパッチ「適用」「記録」ツール。
989デフォルトの名無しさん (ワッチョイ ad14-pSqO)
2022/11/06(日) 19:24:47.08ID:VM2X6i580990デフォルトの名無しさん (ワッチョイ ad14-pSqO)
2022/11/06(日) 19:26:23.98ID:VM2X6i580991デフォルトの名無しさん (ワッチョイ ad14-pSqO)
2022/11/06(日) 19:27:42.33ID:VM2X6i580 regressionする際にもコミットを管理するのは重要で
コミット単位で戻してテストする
動かないコードをコミットすることはない
お前みたいにテキストエディタで修正するたびにコミットとかしない
コミット単位で戻してテストする
動かないコードをコミットすることはない
お前みたいにテキストエディタで修正するたびにコミットとかしない
992デフォルトの名無しさん (ワッチョイ ad14-pSqO)
2022/11/06(日) 19:28:57.43ID:VM2X6i580 なんでchromeのコミットメッセージが
こんなに詳しく書かれているのか、その理由を考えたら?
こんなに詳しく書かれているのか、その理由を考えたら?
993デフォルトの名無しさん (ワッチョイ ad14-pSqO)
2022/11/06(日) 19:32:31.47ID:VM2X6i580 バージョン管理はソースコードの変更履歴を管理するものなので
そこにバグ管理という別の概念を持ち出すのも頭悪い
バグ管理は別のツールでやれ
そこにバグ管理という別の概念を持ち出すのも頭悪い
バグ管理は別のツールでやれ
994デフォルトの名無しさん (ワッチョイ 515f-pSqO)
2022/11/06(日) 19:55:47.23ID:sj15aRfA0 >>986
> 例えば今回俺が送った再現コード、あれはどこに配置されるのだ?
修正コミットのログから URL で辿れるようになるかな。
https://public-inbox.org/git/20221102220142.574890-2-szeder.dev@gmail.com/
> 例えば今回俺が送った再現コード、あれはどこに配置されるのだ?
修正コミットのログから URL で辿れるようになるかな。
https://public-inbox.org/git/20221102220142.574890-2-szeder.dev@gmail.com/
995デフォルトの名無しさん (ワッチョイ 617b-8+ss)
2022/11/06(日) 20:08:52.18ID:OfQ8ymDc0 >>994
それは鯖に置いてるだけだろ。まあそれはそれで十分で、(この意味では最初のMLでも十分)
問題は、
1. .git上、つまりソースコード改変ツリーから簡単に辿れるよう、
commitメッセージにそのリンクは落とされている(落とされる予定)なのか?
そうじゃないと>>977が達成出来ないだろ。
2. そしてregressionテストパターンとして登録され、今後ずっと実行されるのか?
3. そもそも根本の原因はソースコードの程度が酷いことであり、レビューしろよマジで
だよ。
レイヤーの考え方がない奴等ばかりなので通じないかもしれないが、
gitは適用/記録という下層レイヤーであって、バグ/パッチ「管理」は上位レイヤーの戦略だから、
gitで「管理」出来ると思ってるのが間違いなんだよ。記録は出来るが、管理は出来ない。
gitで出来るのは上の1だけだね。
だからcommitメッセージは勿論丁寧に書くべきなんだけど、丁寧に書けばいいわけでもないんだ。
それでバグやパッチが減るわけでもないから。
目的と手段の混同はどの界隈でもあるけど、ここの連中も大概だよ。
それは鯖に置いてるだけだろ。まあそれはそれで十分で、(この意味では最初のMLでも十分)
問題は、
1. .git上、つまりソースコード改変ツリーから簡単に辿れるよう、
commitメッセージにそのリンクは落とされている(落とされる予定)なのか?
そうじゃないと>>977が達成出来ないだろ。
2. そしてregressionテストパターンとして登録され、今後ずっと実行されるのか?
3. そもそも根本の原因はソースコードの程度が酷いことであり、レビューしろよマジで
だよ。
レイヤーの考え方がない奴等ばかりなので通じないかもしれないが、
gitは適用/記録という下層レイヤーであって、バグ/パッチ「管理」は上位レイヤーの戦略だから、
gitで「管理」出来ると思ってるのが間違いなんだよ。記録は出来るが、管理は出来ない。
gitで出来るのは上の1だけだね。
だからcommitメッセージは勿論丁寧に書くべきなんだけど、丁寧に書けばいいわけでもないんだ。
それでバグやパッチが減るわけでもないから。
目的と手段の混同はどの界隈でもあるけど、ここの連中も大概だよ。
996デフォルトの名無しさん (ワッチョイ 617b-8+ss)
2022/11/06(日) 20:11:50.13ID:OfQ8ymDc0997デフォルトの名無しさん (ワッチョイ 515f-pSqO)
2022/11/06(日) 20:22:10.42ID:sj15aRfA0 >>996
そう。コミットメッセージを含めてML上でレビュー中。まだ本体リポジトリには入ってない。
挙がってるレビューコメントを受けてそのうち第2弾が投稿されて取り込まれるんじゃないかな。
君もソースコードの質が気になるなら修正を送ってくれていいんだよ。さぁさぁ。
そう。コミットメッセージを含めてML上でレビュー中。まだ本体リポジトリには入ってない。
挙がってるレビューコメントを受けてそのうち第2弾が投稿されて取り込まれるんじゃないかな。
君もソースコードの質が気になるなら修正を送ってくれていいんだよ。さぁさぁ。
998デフォルトの名無しさん (ワッチョイ 617b-8+ss)
2022/11/06(日) 20:38:50.28ID:OfQ8ymDc0 >>997
つまりあれがそのままに近い状態で入るのか?
まあそれは見守るとして、本来はちゃんとラベルを付け替えないとまずい。
俺が送った段階では高い確率で「free忘れによるメモリリーク」と推定出来たが、
断定は出来なかったので、単に「メモリ食いすぎ」としてる。
だから、メモリリークだと「断定」出来た人が概略を書き直さないといけない。
が、まあ、これは多分為されるだろう。見守るよ。
> 君もソースコードの質が気になるなら修正を送ってくれていいんだよ。さぁさぁ。
これは本質的に無理だ。多分俺、というか、いわゆるCコードを拒絶すると思うよ。
間違いなく、連中は自己の能力に自信持ってて、傲慢で、言うこと聞かない連中だ。
世の中のCコードなんて、基本通りやってる物でほぼ全部だから、見たこと無いわけが無い。
それが何故そうなってるか理解出来ない、
つまり、王道を王道と理解出来ない奴等だからデタラメやってるわけで、
言うこと聞く連中ならそうはならない。
通常だと、やらせるだけやらせて、でもどうにももうダメポなときに、
そもそもお前のコードがおかしい、ここをこう直せ、なら簡単にメモリリークは抑えられる、とすると効くのだろうけど、
問題はバザールで、無限にモグラ叩き出来てしまって、実際にそれでやろうとしてることだよ。
マジかー、って、ちょっと驚きだが、まあ観戦だ。
ああちなみに、俺以外の誰でも、まともなC書ける奴なら、ちょっと引くコードだよ。
だからそこら辺の奴等に書かせても、もっとましなコードになるよ。そして俺もその程度だし。
というか単発のコードでそんなに技量の差なんて出ないし。
つまりあれがそのままに近い状態で入るのか?
まあそれは見守るとして、本来はちゃんとラベルを付け替えないとまずい。
俺が送った段階では高い確率で「free忘れによるメモリリーク」と推定出来たが、
断定は出来なかったので、単に「メモリ食いすぎ」としてる。
だから、メモリリークだと「断定」出来た人が概略を書き直さないといけない。
が、まあ、これは多分為されるだろう。見守るよ。
> 君もソースコードの質が気になるなら修正を送ってくれていいんだよ。さぁさぁ。
これは本質的に無理だ。多分俺、というか、いわゆるCコードを拒絶すると思うよ。
間違いなく、連中は自己の能力に自信持ってて、傲慢で、言うこと聞かない連中だ。
世の中のCコードなんて、基本通りやってる物でほぼ全部だから、見たこと無いわけが無い。
それが何故そうなってるか理解出来ない、
つまり、王道を王道と理解出来ない奴等だからデタラメやってるわけで、
言うこと聞く連中ならそうはならない。
通常だと、やらせるだけやらせて、でもどうにももうダメポなときに、
そもそもお前のコードがおかしい、ここをこう直せ、なら簡単にメモリリークは抑えられる、とすると効くのだろうけど、
問題はバザールで、無限にモグラ叩き出来てしまって、実際にそれでやろうとしてることだよ。
マジかー、って、ちょっと驚きだが、まあ観戦だ。
ああちなみに、俺以外の誰でも、まともなC書ける奴なら、ちょっと引くコードだよ。
だからそこら辺の奴等に書かせても、もっとましなコードになるよ。そして俺もその程度だし。
というか単発のコードでそんなに技量の差なんて出ないし。
999デフォルトの名無しさん (ワッチョイ ad14-pSqO)
2022/11/06(日) 20:40:54.42ID:VM2X6i5801000デフォルトの名無しさん (ブーイモ MM96-1bV6)
2022/11/06(日) 20:46:49.73ID:wlljBD17M 質問いいすか?
10011001
Over 1000Thread このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 197日 17時間 21分 4秒
新しいスレッドを立ててください。
life time: 197日 17時間 21分 4秒
レス数が1000を超えています。これ以上書き込みはできません。
ニュース
- 京都のホテル大幅値下げ 訪日中国人客、年1000万人目前で急ブレーキ ★2 [蚤の市★]
- 中国・ロシア両軍の爆撃機が東京方面へ向かう「異例のルート」を共同飛行…核も搭載可能、連携して威嚇か ★4 [ぐれ★]
- 「今の女性はルッキズム」は本当なのか? 若い世代が結婚相手に求める"本当の条件" [少考さん★]
- 【サッカー】J1リーグの2025年平均観客動員数が4.4%増の21,246人 最多入場者数の2019年を超えて過去最高値 ★2 [尺アジ★]
- 【沖縄】宮古島で陸自防災訓練に抗議した団体、「恫喝された」と駐屯地トップ厳正捜査求め署名運動 「市民弾圧と戦争への道を…」 [少考さん★]
- 現場からは悲鳴、母親からは「高い」「性犯罪が怖い」の声も…高市総理がどうしても実現したい政策「ベビーシッターの利用促進」 [ぐれ★]
- 愛国者さんたちが突然ありとあらゆるものを日本起源だと主張し始めてる理由、誰にも分からない [153736977]
- 鈴木大臣「お米券の使い勝手は悪くない。卵や味噌、醤油も買えます。」 [237216734]
- 【実況】博衣こよりのえちえちドラクエ1&2リメイク🧪★3
- 高市、株の税金を20%→35%にアップ!1月1日から [347751896]
- 正義のミカタ「中国は日本人の反高市勢力を裏で操ってる。あいつらはスパイ」 [931948549]
- 【悲報】スマホメーカー「メモリが高いので来年から半分に減らします♥」
