ソースコード管理を行う分散型バージョン管理システム、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 17
https://mevius.5ch.net/test/read.cgi/tech/1599016710/
Git 18
http://mevius.5ch.net/test/read.cgi/tech/1650651945/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
探検
Git 19
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 8be4-Cw2/)
2022/11/06(日) 16:40:27.51ID:az1H5JFk099デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/12(土) 06:43:34.00ID:h41UD2lS0 >>90
Gitが提供しているもの: 1000ページの取扱説明書を読まないとまともに使えない、超高性能電動ドリル
ユーザーが欲しかったもの: 引き金を引けば回るだけ、簡単で今すぐ使える、ホビー用電動ドリル
Gitが提供しているもの: 1000ページの取扱説明書を読まないとまともに使えない、超高性能電動ドリル
ユーザーが欲しかったもの: 引き金を引けば回るだけ、簡単で今すぐ使える、ホビー用電動ドリル
100デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/12(土) 06:46:43.39ID:h41UD2lS0 ちな、CodeOfConduct読んで、あいつら中の人か!ってのが分かったので俺的査定。
Avar Arnfjord Bjarmason: 今なんとか方向修正を試みてるように見える。上手く導ければ有能だが、果たして?
Christian Couder: 出てきてないので不明
Junio C Hamano: 休暇中?らしい (40)
Taylor Blau: 無能。ってか閻魔大王が全スルーするならいないのと同じ。ちゃんと門番やれ。
そういえばGitのコーディングルールはどこにあるのだ?
今回ほどの糞コードは、コーディングルールで引っかけて落とせるはずだが。
Avar Arnfjord Bjarmason: 今なんとか方向修正を試みてるように見える。上手く導ければ有能だが、果たして?
Christian Couder: 出てきてないので不明
Junio C Hamano: 休暇中?らしい (40)
Taylor Blau: 無能。ってか閻魔大王が全スルーするならいないのと同じ。ちゃんと門番やれ。
そういえばGitのコーディングルールはどこにあるのだ?
今回ほどの糞コードは、コーディングルールで引っかけて落とせるはずだが。
101デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/12(土) 06:52:44.85ID:h41UD2lS0 >>89,94,95
全部読んだ。なかなか面白かった。(89はコメントも全部読んだ)
君が冷やかしかマジかは分からないが、マジで要るんなら作ってみてもいい。
ただし今すぐ取りかかれるわけでもないし、全般的に考えて本年度末(3月末)位が現実的な目標になる。
今考えている構成をざっくり言うと以下
・Gitをゴミ箱/バケツ化するラッパ(フロントエンドのみ。バックエンドはGitで、Gitは別インストール必須)
・electronで作ってwindowsストアに配置(広告付き無料アプリ)
十分売れてる限り保守してやんよ(その必要すらないほど単純なアプリだが)
・プロプライエタリで伽藍開発。バザールなんてとても無理。コードは俺が書くから、お前らは使い勝手をフィードバックしろ。
・GitBucket(仮称)、Gitと付けたら不味いのなら考え直す
・コンセプトは、「何も知らなくても使える『全自動完全履歴保持バケツ』」
よって仕様は限りなく簡素化し、それ以上やりたければDBはgitだからgitアプリ使え、とする
・diffは取れるがmergeは直感的GUIがないので無理。が、主にバイナリを保存する連中には全く関係ないし。
・branchはディレクトリに割り当てて手動で。というより、git内にcommit履歴が保持されてないのでbranchの識別が出来ない。
全部読んだ。なかなか面白かった。(89はコメントも全部読んだ)
君が冷やかしかマジかは分からないが、マジで要るんなら作ってみてもいい。
ただし今すぐ取りかかれるわけでもないし、全般的に考えて本年度末(3月末)位が現実的な目標になる。
今考えている構成をざっくり言うと以下
・Gitをゴミ箱/バケツ化するラッパ(フロントエンドのみ。バックエンドはGitで、Gitは別インストール必須)
・electronで作ってwindowsストアに配置(広告付き無料アプリ)
十分売れてる限り保守してやんよ(その必要すらないほど単純なアプリだが)
・プロプライエタリで伽藍開発。バザールなんてとても無理。コードは俺が書くから、お前らは使い勝手をフィードバックしろ。
・GitBucket(仮称)、Gitと付けたら不味いのなら考え直す
・コンセプトは、「何も知らなくても使える『全自動完全履歴保持バケツ』」
よって仕様は限りなく簡素化し、それ以上やりたければDBはgitだからgitアプリ使え、とする
・diffは取れるがmergeは直感的GUIがないので無理。が、主にバイナリを保存する連中には全く関係ないし。
・branchはディレクトリに割り当てて手動で。というより、git内にcommit履歴が保持されてないのでbranchの識別が出来ない。
102デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/12(土) 06:54:37.10ID:h41UD2lS0 実装するだけなら2週間程度で十分だが、
・electron使ったこと無いので調査に2週間ほどかかる
・アプリストアも広告付きのアプリも作ったことないので、これも2週間ほど調査必要
・仕様を練らないとろくな事にならない、
Linusが2週間と言ってるのは実装であって、それ以前にずっといろいろVCS使ってきてるから仕様が熟成済みだっただけ。
・そもそも顧客がいるかどうか
・一応は他WindowsGitアプリを全部確認する必要がある。今tortoiseGit試しにインストールしてみたところ。
があるので、冷やかしでないのなら新しくスレ立てて様子見する。
スレタイには GitBucket(仮称)と、何か「Gitはもう諦めた系」「頑張らない系」の連中を集められる文言を入れたいが、何がいいか。
板はここかソフトウェア板だと思うが、他に候補があるか。
ただ対象ユーザーはここに来る連中ではなくガチのど素人なので、もっと全然違うところの方がいいかも?
スレタイ案:
A. もうGitBucket(仮称)でええやん。
B. GitBucket(仮称)使ってるからって、Gitが分からなかった訳じゃないんだからねっ!!!
C. GitBucket(仮称)計画中、Gitに疲れた奴集まれ
D. 日常のバックアップツールGitBucket(仮称)
冷やかしじゃない奴からの投票を受け付ける。
・electron使ったこと無いので調査に2週間ほどかかる
・アプリストアも広告付きのアプリも作ったことないので、これも2週間ほど調査必要
・仕様を練らないとろくな事にならない、
Linusが2週間と言ってるのは実装であって、それ以前にずっといろいろVCS使ってきてるから仕様が熟成済みだっただけ。
・そもそも顧客がいるかどうか
・一応は他WindowsGitアプリを全部確認する必要がある。今tortoiseGit試しにインストールしてみたところ。
があるので、冷やかしでないのなら新しくスレ立てて様子見する。
スレタイには GitBucket(仮称)と、何か「Gitはもう諦めた系」「頑張らない系」の連中を集められる文言を入れたいが、何がいいか。
板はここかソフトウェア板だと思うが、他に候補があるか。
ただ対象ユーザーはここに来る連中ではなくガチのど素人なので、もっと全然違うところの方がいいかも?
スレタイ案:
A. もうGitBucket(仮称)でええやん。
B. GitBucket(仮称)使ってるからって、Gitが分からなかった訳じゃないんだからねっ!!!
C. GitBucket(仮称)計画中、Gitに疲れた奴集まれ
D. 日常のバックアップツールGitBucket(仮称)
冷やかしじゃない奴からの投票を受け付ける。
103デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/12(土) 06:57:39.26ID:h41UD2lS0 >>97
(わざわざ色々考えてくれたのなら手間かけてすまんが)
正直全く分からんし、俺はstashも糞仕様と思うから使う気ない。
というか、Gitの連中、「仕様は小さくあるべき」という感覚がそもそも無いと思う。
俺だったら、branchなんて、各ディレクトリにそのままマッピングする。
つまり、sample.txtの開発なら、
.git
master/sample.txt
develop/sample.txt
featureXXX/sample.txt
stash/sample.txt
で、実行パスは xxxx/current/sample.txt としておいて、
ブランチの切換はcd、実行ブランチの切換は ln -s master current でよかった。
stashなんて不要機能そのものだよ。直感的じゃないし、そこまでGit信じ切れないし。
この馬鹿仕様で git add -A で取ってれば各ブランチの同時開発状況含めて完全にcommit履歴が保持出来る。これで十分だ。
Gitによってカレントディレクトリの内容が「上書き」されるのはかなり気持ち悪い。
zip展開するときと同様、バケツからは明示的に取り出さないと上書きされない、が分かりやすくて良いんだよ。
branch切換で全部上書きで入れ替わるのは、頻繁に過去と現在を往復するにはいい仕様だが、普通の人には要らん。
というわけでGitBucketは基本この方針でmasterに全ての履歴を数珠繋ぎ、
平行開発はディレクトリとシンボリックリンクで手動でやれ、
git branch xxxx で切り替えれば勿論切り替わるが、バックアップはその状態で取るのであしからず、
それが嫌なら一々masterに手動で戻せ、(自動戻しは失敗するときがあるので付けない)
だから戻し忘れたら一見ちぐはぐになるが、どのみち何処かに残ってるからなんとか探し出せ、という仕様。
要するにGitBucketはbranchを無視する。
(現在のbranchの記録はしておく。これでbranchを使う人も使わない人も問題ない)
(わざわざ色々考えてくれたのなら手間かけてすまんが)
正直全く分からんし、俺はstashも糞仕様と思うから使う気ない。
というか、Gitの連中、「仕様は小さくあるべき」という感覚がそもそも無いと思う。
俺だったら、branchなんて、各ディレクトリにそのままマッピングする。
つまり、sample.txtの開発なら、
.git
master/sample.txt
develop/sample.txt
featureXXX/sample.txt
stash/sample.txt
で、実行パスは xxxx/current/sample.txt としておいて、
ブランチの切換はcd、実行ブランチの切換は ln -s master current でよかった。
stashなんて不要機能そのものだよ。直感的じゃないし、そこまでGit信じ切れないし。
この馬鹿仕様で git add -A で取ってれば各ブランチの同時開発状況含めて完全にcommit履歴が保持出来る。これで十分だ。
Gitによってカレントディレクトリの内容が「上書き」されるのはかなり気持ち悪い。
zip展開するときと同様、バケツからは明示的に取り出さないと上書きされない、が分かりやすくて良いんだよ。
branch切換で全部上書きで入れ替わるのは、頻繁に過去と現在を往復するにはいい仕様だが、普通の人には要らん。
というわけでGitBucketは基本この方針でmasterに全ての履歴を数珠繋ぎ、
平行開発はディレクトリとシンボリックリンクで手動でやれ、
git branch xxxx で切り替えれば勿論切り替わるが、バックアップはその状態で取るのであしからず、
それが嫌なら一々masterに手動で戻せ、(自動戻しは失敗するときがあるので付けない)
だから戻し忘れたら一見ちぐはぐになるが、どのみち何処かに残ってるからなんとか探し出せ、という仕様。
要するにGitBucketはbranchを無視する。
(現在のbranchの記録はしておく。これでbranchを使う人も使わない人も問題ない)
104デフォルトの名無しさん (アウアウウー Saa9-9aJV)
2022/11/12(土) 09:27:34.24ID:xzRuq+6da electron 使うなら、ブラウザ上にOSのデスクトップ画面を再現するのと同じ事ができるだろう。
ゴミ箱/バケツのところでなくて、デスクトップに置いて管理されている事になっているファイルをコントロールできるようにして欲しい。
ゴミ箱/バケツのところでなくて、デスクトップに置いて管理されている事になっているファイルをコントロールできるようにして欲しい。
105デフォルトの名無しさん (ワッチョイ 2514-H0Ic)
2022/11/12(土) 09:30:46.94ID:Cj/ueztB0 >>98
> Gitはパッチ適用ツールであって、本当に、パッチ書く側のサポートが全くない。
パッチ適用ツールはpatchコマンドっていうんだよ
gitはそれ以上のサポートがたくさんある
これ以上何がほしいいっていうんだよw
> Gitはパッチ適用ツールであって、本当に、パッチ書く側のサポートが全くない。
パッチ適用ツールはpatchコマンドっていうんだよ
gitはそれ以上のサポートがたくさんある
これ以上何がほしいいっていうんだよw
106デフォルトの名無しさん (ワッチョイ 2514-H0Ic)
2022/11/12(土) 09:31:53.24ID:Cj/ueztB0107デフォルトの名無しさん (ワッチョイ 2514-H0Ic)
2022/11/12(土) 09:37:06.39ID:Cj/ueztB0108デフォルトの名無しさん (ワッチョイ 2514-H0Ic)
2022/11/12(土) 09:39:05.08ID:Cj/ueztB0 >>103
> branch切換で全部上書きで入れ替わるのは、頻繁に過去と現在を往復するにはいい仕様だが、普通の人には要らん。
branch切り替えで入れ替わるのはコミットしたものだけだよ
これは便利でコミットしてない設定ファイルやデータファイルなどは
そのまま残る
こういうことまで考えつかなかったでしょ?w
> branch切換で全部上書きで入れ替わるのは、頻繁に過去と現在を往復するにはいい仕様だが、普通の人には要らん。
branch切り替えで入れ替わるのはコミットしたものだけだよ
これは便利でコミットしてない設定ファイルやデータファイルなどは
そのまま残る
こういうことまで考えつかなかったでしょ?w
109デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/12(土) 10:59:50.02ID:h41UD2lS0 >>104
> デスクトップに置いて管理されている事になっているファイルをコントロールできるようにして欲しい。
それはやる。というか、今考えている動作モードは2つで、
A. ある階層以下全部の履歴を記録
B. 明示的に指定したファイルまたはディレクトリの履歴を記録
で、Aがgit的、Bがゴミ箱的な使い方になる。
ライトユーザーにはBの方が直感的だろう。
毎日「ゴミ箱ならぬ記録箱」にブッ込んでおけば、万一の時に引っ張り出せるだけ、という使い方だ。
ただし中身がgitなので、当然Aの方が実装しやすい。
当たり前だが同居させないと余分なコードがいるので、無理にでも同居させる。
この解だが、一応
.git
c/users/user/desktop
みたいに、カレントをルートと見立てたファイルツリーとし、
明示的に指定されたらそこ(ディレクトリまたはファイル)を指すシンボリックリンクを作ってgitに取らせるつもり。
(この場合は上記desktopが実際のdesktopを指すシンボリックリンク)
これで不味いかね?普通に読むだけならシンボリックリンクは実体が見えるので、
gitがシンボリックリンクを特に区別しないならこれで全く問題ないはずなんだが。(未調査)
或いは git add c:/users/user/desktop とか、絶対パスで指定した方が上手く行くのだろうか?
しかし見る限り git add で指定するのは通常はカレント下だけなので、
(仕様的には使えたとしても)変なバグを踏みそうなので回避した方が無難ではある。
この仕様で問題なのは、パスが糞長いと記録出来なくなること。
つまり、カレント下に絶対パスを付け加えるので、実体のファイルツリーよりも「常に」カレント分だけパスが長くなり、
パスの文字数の上限(今も260文字らしい)を越えると記録出来なくなる。
> https://learn.microsoft.com/ja-jp/windows/win32/fileio/maximum-file-path-limitation
だからガチもん商用アプリではこの解は使えない。
(仮にルートに置いてもc:\の3文字は長くなるので、ユーザーファイルが合計258-260文字のパスになってるときに記録出来ない)
が、今回は、「そんな糞長いパスにするな」で終わり、諦める。(WARNINGは出す)
> デスクトップに置いて管理されている事になっているファイルをコントロールできるようにして欲しい。
それはやる。というか、今考えている動作モードは2つで、
A. ある階層以下全部の履歴を記録
B. 明示的に指定したファイルまたはディレクトリの履歴を記録
で、Aがgit的、Bがゴミ箱的な使い方になる。
ライトユーザーにはBの方が直感的だろう。
毎日「ゴミ箱ならぬ記録箱」にブッ込んでおけば、万一の時に引っ張り出せるだけ、という使い方だ。
ただし中身がgitなので、当然Aの方が実装しやすい。
当たり前だが同居させないと余分なコードがいるので、無理にでも同居させる。
この解だが、一応
.git
c/users/user/desktop
みたいに、カレントをルートと見立てたファイルツリーとし、
明示的に指定されたらそこ(ディレクトリまたはファイル)を指すシンボリックリンクを作ってgitに取らせるつもり。
(この場合は上記desktopが実際のdesktopを指すシンボリックリンク)
これで不味いかね?普通に読むだけならシンボリックリンクは実体が見えるので、
gitがシンボリックリンクを特に区別しないならこれで全く問題ないはずなんだが。(未調査)
或いは git add c:/users/user/desktop とか、絶対パスで指定した方が上手く行くのだろうか?
しかし見る限り git add で指定するのは通常はカレント下だけなので、
(仕様的には使えたとしても)変なバグを踏みそうなので回避した方が無難ではある。
この仕様で問題なのは、パスが糞長いと記録出来なくなること。
つまり、カレント下に絶対パスを付け加えるので、実体のファイルツリーよりも「常に」カレント分だけパスが長くなり、
パスの文字数の上限(今も260文字らしい)を越えると記録出来なくなる。
> https://learn.microsoft.com/ja-jp/windows/win32/fileio/maximum-file-path-limitation
だからガチもん商用アプリではこの解は使えない。
(仮にルートに置いてもc:\の3文字は長くなるので、ユーザーファイルが合計258-260文字のパスになってるときに記録出来ない)
が、今回は、「そんな糞長いパスにするな」で終わり、諦める。(WARNINGは出す)
110デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/12(土) 11:00:10.29ID:h41UD2lS0 てな話を仕様として詰める必要があって、つまり、
1. どういう機能が欲しいか
2. それはこの仕様(実装)でいけるか
みたいなこと。
ちょこちょこやるのはさておき、本格的にやるならスレ分けるべきだな、という話。
1. どういう機能が欲しいか
2. それはこの仕様(実装)でいけるか
みたいなこと。
ちょこちょこやるのはさておき、本格的にやるならスレ分けるべきだな、という話。
111デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/12(土) 11:11:14.80ID:h41UD2lS0 >>105
commit/rebase履歴の全保持と、commitのフィルタ機能だね。
記録側からみればゴミなcommitも、プログラマからみれば重要なんだよ。だからそれを見えなくする機能だね。
CSSでいうdisplay:noneの機能。
今は、「綺麗に清書して=プログラマには必要だったコミットも全部消して」提出しろ、になってるだろ。
これが無駄だし、プログラマ的には不快だ。
それは悪戦苦闘の記録であって、デグレードした場合に参照したい時もあるんだよ。消してるのは不味い。
ローカルだけにしろ、はその通りだが、今はローカルだけにも出来ない仕様だろ。(無駄にブロックチェーンしてるので)
commit/rebase履歴の全保持と、commitのフィルタ機能だね。
記録側からみればゴミなcommitも、プログラマからみれば重要なんだよ。だからそれを見えなくする機能だね。
CSSでいうdisplay:noneの機能。
今は、「綺麗に清書して=プログラマには必要だったコミットも全部消して」提出しろ、になってるだろ。
これが無駄だし、プログラマ的には不快だ。
それは悪戦苦闘の記録であって、デグレードした場合に参照したい時もあるんだよ。消してるのは不味い。
ローカルだけにしろ、はその通りだが、今はローカルだけにも出来ない仕様だろ。(無駄にブロックチェーンしてるので)
112デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/12(土) 11:11:41.80ID:h41UD2lS0 >>106
世界規模で勝手に開発してるLinuxならそうだろう。
しかし、ローカルファイルシステム、或いは共有ファイルシステムに於いては、当たり前だが「同じディレクトリ名」=「同一」なんだよ。
だからディレクトリ名が被って困る、なんて事はない。
そして、バックアップ的には、branchはパスが伸びた程度の意味しかないから、これで問題ない。
(git流のbranchの使い方をしてても、これで問題ない。
通常のファイルシステムでは、パス+ファイル名が同じなら同一と見なすが、
ここがgitではパス+ファイル名+ブランチ名になってるだけ。
branch自体の参照先も変えられる!と思うかもしれんが、それはユーザーがそうしたのであって、
確か○月○日頃の○○ブランチ内にそのファイルがあるはず、と思い出すのはユーザー責任だ。
いずれにしても何処かに記録はされてるから、あとは頑張って探せという仕様)
世界規模で勝手に開発してるLinuxならそうだろう。
しかし、ローカルファイルシステム、或いは共有ファイルシステムに於いては、当たり前だが「同じディレクトリ名」=「同一」なんだよ。
だからディレクトリ名が被って困る、なんて事はない。
そして、バックアップ的には、branchはパスが伸びた程度の意味しかないから、これで問題ない。
(git流のbranchの使い方をしてても、これで問題ない。
通常のファイルシステムでは、パス+ファイル名が同じなら同一と見なすが、
ここがgitではパス+ファイル名+ブランチ名になってるだけ。
branch自体の参照先も変えられる!と思うかもしれんが、それはユーザーがそうしたのであって、
確か○月○日頃の○○ブランチ内にそのファイルがあるはず、と思い出すのはユーザー責任だ。
いずれにしても何処かに記録はされてるから、あとは頑張って探せという仕様)
113デフォルトの名無しさん (ワッチョイ adc2-owoj)
2022/11/12(土) 11:13:16.58ID:inQx9iPN0 git関係ないけどWindows10 1607以降はMAX_PATH制限なくなってるんだな
114デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/12(土) 11:13:17.79ID:h41UD2lS0 >>108
知ってるぞ。
ただ、切り替わらなくてもいい共通ファイル類はその場合には .git 階層に置くんだよ。
というかね、gitが何故か「カレント主義」になってて、とにかく「カレントディレクトリ」なんだよな。
これは本当によく分からない。
俺がGitGUIで最初にやったのは、「Open repository ...」を探すこと、だからな。
無いから、「え?まさか?カレントで起動しないと駄目なのか?」でわざわざショートカット作り直して起動し直した。
普通そんなアプリ無い。この辺は、「いつも通りのアプリ」じゃないと駄目なんだよ。
知ってるぞ。
ただ、切り替わらなくてもいい共通ファイル類はその場合には .git 階層に置くんだよ。
というかね、gitが何故か「カレント主義」になってて、とにかく「カレントディレクトリ」なんだよな。
これは本当によく分からない。
俺がGitGUIで最初にやったのは、「Open repository ...」を探すこと、だからな。
無いから、「え?まさか?カレントで起動しないと駄目なのか?」でわざわざショートカット作り直して起動し直した。
普通そんなアプリ無い。この辺は、「いつも通りのアプリ」じゃないと駄目なんだよ。
115デフォルトの名無しさん (ワッチョイ 1563-sfiH)
2022/11/12(土) 11:26:13.02ID:403mRijK0116デフォルトの名無しさん (ワッチョイ 4bbb-tcgO)
2022/11/12(土) 11:28:11.58ID:zxvXZjfz0117デフォルトの名無しさん (ワッチョイ 4bbb-tcgO)
2022/11/12(土) 11:37:38.69ID:zxvXZjfz0 >>103
ブランチにディレクトリを使うのは既に subversion がやって失敗した道だぞ
ファイル数やファイルサイズが大きくなるとブランチ切るのに時間とディスク容量がかかり過ぎる
過去話読んでも何も学ばないやつはゴミを再発明するよな
とはいえ、お前やお前が想定しているユーザー層はたいした規模のプログラム組まないだろうからゴミでも十分かもな、知らんけど
ブランチにディレクトリを使うのは既に subversion がやって失敗した道だぞ
ファイル数やファイルサイズが大きくなるとブランチ切るのに時間とディスク容量がかかり過ぎる
過去話読んでも何も学ばないやつはゴミを再発明するよな
とはいえ、お前やお前が想定しているユーザー層はたいした規模のプログラム組まないだろうからゴミでも十分かもな、知らんけど
118デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/12(土) 11:45:13.42ID:h41UD2lS0 >>115
車輪の再開発はしないんだよ。
どこまで使えるか判断して、その範囲は使うし、それを超えた範囲は使わない。
(今の実態だと、git add 絶対パス、はほぼ確実にバグを踏むから使わない)
自分で作ればバグがない物が簡単に出来るわけでもないし。
> mergeのことは考えてないんだな
GUIでmerge、例えばドラッグアンドドロップでmergeは怖いだろ。
コピーするつもりがmergeされたら悲惨なことになる。
(コピーや移動と同じGUIにmergeをアサインしてはいけない)
だからmerge自体はgitアプリで明示的にやれ、という仕様。その方が安心だ。
そもそもバイナリはmerge出来ないし、
GitBucket使うような連中にはmergeなんてほぼ要らん。
てゆうかね、そもそもmergeが主な仕事ならgit使うべき。あれは完全にmerge特化型だから。
GitBucketのユーザーは、そのmergeのネタを作る側、つまりプログラマとかクリエーターとかだ。
管理側じゃなくて、管理される側。
車輪の再開発はしないんだよ。
どこまで使えるか判断して、その範囲は使うし、それを超えた範囲は使わない。
(今の実態だと、git add 絶対パス、はほぼ確実にバグを踏むから使わない)
自分で作ればバグがない物が簡単に出来るわけでもないし。
> mergeのことは考えてないんだな
GUIでmerge、例えばドラッグアンドドロップでmergeは怖いだろ。
コピーするつもりがmergeされたら悲惨なことになる。
(コピーや移動と同じGUIにmergeをアサインしてはいけない)
だからmerge自体はgitアプリで明示的にやれ、という仕様。その方が安心だ。
そもそもバイナリはmerge出来ないし、
GitBucket使うような連中にはmergeなんてほぼ要らん。
てゆうかね、そもそもmergeが主な仕事ならgit使うべき。あれは完全にmerge特化型だから。
GitBucketのユーザーは、そのmergeのネタを作る側、つまりプログラマとかクリエーターとかだ。
管理側じゃなくて、管理される側。
119デフォルトの名無しさん (ワッチョイ 4bbb-tcgO)
2022/11/12(土) 11:59:07.72ID:zxvXZjfz0 >>111
アホでやんの。マニュアル斜め読みしただけで実際に使用してないので本質が見えてないな
rebase する前に新しいブランチ切ってやれば
rebase前とrebase後の両方残せるという基礎の基礎すら理解できてないのか
普通はそうやって使うんだよ。マージも一緒。
ブランチが軽量で好きなだけ切れるので情報残したい数だけブランチを切ればいいだけだよ
rebase --keep-base みたいな使い方もあるけど基本が理解できてないやつは混乱するだけだろうな
アホでやんの。マニュアル斜め読みしただけで実際に使用してないので本質が見えてないな
rebase する前に新しいブランチ切ってやれば
rebase前とrebase後の両方残せるという基礎の基礎すら理解できてないのか
普通はそうやって使うんだよ。マージも一緒。
ブランチが軽量で好きなだけ切れるので情報残したい数だけブランチを切ればいいだけだよ
rebase --keep-base みたいな使い方もあるけど基本が理解できてないやつは混乱するだけだろうな
120デフォルトの名無しさん (ワッチョイ 1563-sfiH)
2022/11/12(土) 11:59:16.76ID:403mRijK0 >>118
× mergeが主な仕事ならgit使うべき。
○ mergeを使う可能性があるならgitを使うべき
長文君ソフト(仮)ではmergeのことを考えてないんだから
すでに書かれてるけど他のスレに行ってくれ
仕様の検討も含めてそっちでやればいいんだから
× mergeが主な仕事ならgit使うべき。
○ mergeを使う可能性があるならgitを使うべき
長文君ソフト(仮)ではmergeのことを考えてないんだから
すでに書かれてるけど他のスレに行ってくれ
仕様の検討も含めてそっちでやればいいんだから
121デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/12(土) 12:01:03.49ID:h41UD2lS0 >>117
ああその失敗情報は有り難い。
ただ、そこは理論的に問題ない。
技術的には、Gitでもカレントを「上書き」するのだからコピーと同じだけのI/Oが必要であり、
I/Oバウンドの場合、GitでもSubversionでもその部分の処理時間は同じになる。
(Gitのbranch切換とSubversionのブランチ作成が同じI/O負荷)
そこで速度差が出るのだから、実際は、86で既に言ったとおり、Subversionが各ソースを「展開」するのが遅くて、
それはおそらく順方向履歴しか持ってないからだ。
(逆方向履歴持ってれば、commitは早くならないかもしれないが、branch切り出しはコピーと同速に出来る)
ここら辺はSubversionの基本アーキが腐ってるからだが、
この点GitBucketは中身Gitだから、コピーするだけで、結果的には本家Git(上書きするだけ)と同速だよ。
そのコピーが重い?
だったらbranch切換セレクタだけは付けるから、それで勝手に自前で管理しろ。
バックアップツールとしては、branchはパスが伸びただけの意味しかないからそうする、というのは112の通り。
コピーオンライトのファイルシステム、つまりハードリンクにする手もあるけど、これはユーザーが付いて来れないだろ。
ならコピー時間待たせた方がいい。
ああその失敗情報は有り難い。
ただ、そこは理論的に問題ない。
技術的には、Gitでもカレントを「上書き」するのだからコピーと同じだけのI/Oが必要であり、
I/Oバウンドの場合、GitでもSubversionでもその部分の処理時間は同じになる。
(Gitのbranch切換とSubversionのブランチ作成が同じI/O負荷)
そこで速度差が出るのだから、実際は、86で既に言ったとおり、Subversionが各ソースを「展開」するのが遅くて、
それはおそらく順方向履歴しか持ってないからだ。
(逆方向履歴持ってれば、commitは早くならないかもしれないが、branch切り出しはコピーと同速に出来る)
ここら辺はSubversionの基本アーキが腐ってるからだが、
この点GitBucketは中身Gitだから、コピーするだけで、結果的には本家Git(上書きするだけ)と同速だよ。
そのコピーが重い?
だったらbranch切換セレクタだけは付けるから、それで勝手に自前で管理しろ。
バックアップツールとしては、branchはパスが伸びただけの意味しかないからそうする、というのは112の通り。
コピーオンライトのファイルシステム、つまりハードリンクにする手もあるけど、これはユーザーが付いて来れないだろ。
ならコピー時間待たせた方がいい。
122デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/12(土) 12:09:47.00ID:h41UD2lS0 >>119
> rebase する前に新しいブランチ切ってやれば
そこはbranchではなくてタグだとは思うが、要はそれ、gcされないようにポインタ残してるだけだろ。
しかし開発しなくなったbranchは刈り取れ、というのが一般の使い方だろ。(それが推奨されてるように見える)
そもそもgcされないようにxxする、というのが間違ってるんだよ。
そんなところまでユーザーが密結合すべきではない。
普通にオススメ通りやったら、探せば何処かに履歴はあるよ、程度じゃないと。
まあ--keep-baseについては見てみるよ。
Bookの方が断然良かったのでman の方読むの止めてたから、知らなかった。
> rebase する前に新しいブランチ切ってやれば
そこはbranchではなくてタグだとは思うが、要はそれ、gcされないようにポインタ残してるだけだろ。
しかし開発しなくなったbranchは刈り取れ、というのが一般の使い方だろ。(それが推奨されてるように見える)
そもそもgcされないようにxxする、というのが間違ってるんだよ。
そんなところまでユーザーが密結合すべきではない。
普通にオススメ通りやったら、探せば何処かに履歴はあるよ、程度じゃないと。
まあ--keep-baseについては見てみるよ。
Bookの方が断然良かったのでman の方読むの止めてたから、知らなかった。
123デフォルトの名無しさん (ワッチョイ 4bbb-tcgO)
2022/11/12(土) 12:11:08.00ID:zxvXZjfz0124デフォルトの名無しさん (ワッチョイ 4bbb-tcgO)
2022/11/12(土) 12:15:51.67ID:zxvXZjfz0125デフォルトの名無しさん (ワッチョイ d55f-BvCT)
2022/11/12(土) 12:18:07.20ID:bWvYfJDZ0 Subversion のブランチ作成がファイル数やサイズで重くなるとか・・・
てきとうなこと言うやつが二人になってカオス。二人とも早く別スレに行くか黙るかしてくれ。
てきとうなこと言うやつが二人になってカオス。二人とも早く別スレに行くか黙るかしてくれ。
126デフォルトの名無しさん (ワッチョイ 4bcf-IBSA)
2022/11/12(土) 12:34:32.74ID:ajB/boEg0 GitBucket をdisってんのかと思った。
その名前はもう使われてるから変えろバカ。
その名前はもう使われてるから変えろバカ。
127デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/12(土) 12:54:11.71ID:h41UD2lS0 >>120
多分な、開発現場において「ファイル内の」mergeが日常ってのはあまりないと思うぞ。
それは各自が勝手にどのファイルをどういじってもいい、ということだから。
gitによって開発フローが変わった!ってのがこの辺かもしれんが、
普通は担当を振り分けて、結果的に
「この期間にこのファイルを触るのは○○だけ」
と交通整理される。
同時に変更する必要があれば、同じ奴に同時にやらせるだけ。(注文が増えるだけ)
そして各自が変更したファイルをかき集めて、くっつけて終わりだ。
お前らはこれもmergeと言ってる気がするが、
これは「更新日時が新しければ上書きする」だけの話で、手動でも楽勝だし、
プログラマはこれをmergeとは言わない。
プログラマが言う「ファイル内」のmergeが日常的に発生するかどうかはその部署のオペレーションによる。
(が、会社とか統制取れる場所でこれをする意味はないから、OSS以外ではほぼないと思うが)
多分な、開発現場において「ファイル内の」mergeが日常ってのはあまりないと思うぞ。
それは各自が勝手にどのファイルをどういじってもいい、ということだから。
gitによって開発フローが変わった!ってのがこの辺かもしれんが、
普通は担当を振り分けて、結果的に
「この期間にこのファイルを触るのは○○だけ」
と交通整理される。
同時に変更する必要があれば、同じ奴に同時にやらせるだけ。(注文が増えるだけ)
そして各自が変更したファイルをかき集めて、くっつけて終わりだ。
お前らはこれもmergeと言ってる気がするが、
これは「更新日時が新しければ上書きする」だけの話で、手動でも楽勝だし、
プログラマはこれをmergeとは言わない。
プログラマが言う「ファイル内」のmergeが日常的に発生するかどうかはその部署のオペレーションによる。
(が、会社とか統制取れる場所でこれをする意味はないから、OSS以外ではほぼないと思うが)
128デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/12(土) 12:57:01.77ID:h41UD2lS0 >>126
了解。考え直すよ。一度位ググるべきだったわ。
了解。考え直すよ。一度位ググるべきだったわ。
129デフォルトの名無しさん (ワッチョイ 4bbb-tcgO)
2022/11/12(土) 13:00:04.63ID:zxvXZjfz0 >>125
お前的には svn copy だけがブランチの作成で svn checkout は不要という主張したいの?
svn 的には checkout までが作成で、ブランチの切り替えは cd じゃないか。
オフトピなので svn の思想の話を続ける気はないけど、気になった。
お前的には svn copy だけがブランチの作成で svn checkout は不要という主張したいの?
svn 的には checkout までが作成で、ブランチの切り替えは cd じゃないか。
オフトピなので svn の思想の話を続ける気はないけど、気になった。
130デフォルトの名無しさん (ワッチョイ 1563-sfiH)
2022/11/12(土) 13:08:13.18ID:403mRijK0131デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/12(土) 13:18:34.58ID:h41UD2lS0 >>130
つまりお前らGit屋の要求仕様は、
ファイル内のmerge:要らん
ディレクトリ内のmerge(=新しい方を取るだけ):要る
ってのか?これなら手動でやった方が楽だよ。
普通にゴミ箱=エクスプローラ的GUIになんだから、日付でソートして纏めて選択して持ってくだけ。
いちいち「オレオレアプリ的merge」とか用意するから余計混乱する。
使い慣れたエクスプローラで苦も無く出来るのだから、それで十分なんだよ。
つまりお前らGit屋の要求仕様は、
ファイル内のmerge:要らん
ディレクトリ内のmerge(=新しい方を取るだけ):要る
ってのか?これなら手動でやった方が楽だよ。
普通にゴミ箱=エクスプローラ的GUIになんだから、日付でソートして纏めて選択して持ってくだけ。
いちいち「オレオレアプリ的merge」とか用意するから余計混乱する。
使い慣れたエクスプローラで苦も無く出来るのだから、それで十分なんだよ。
132デフォルトの名無しさん (ワッチョイ 1563-sfiH)
2022/11/12(土) 13:25:22.90ID:403mRijK0 >>131
訳のわからないこと言ってないで、とっとと長文君ソフト(仮)スレ立てて移動しろ
訳のわからないこと言ってないで、とっとと長文君ソフト(仮)スレ立てて移動しろ
133デフォルトの名無しさん (ワッチョイ 4bbb-tcgO)
2022/11/12(土) 13:25:51.41ID:zxvXZjfz0 >>131
そんな低レベルの話してるのはお前だけだぞ
そんな低レベルの話してるのはお前だけだぞ
134デフォルトの名無しさん (ワッチョイ 4b8f-X3QC)
2022/11/12(土) 13:45:55.74ID:/s1n3tt70 >>127
> 普通は担当を振り分けて、結果的に
> 「この期間にこのファイルを触るのは○○だけ」
> と交通整理される。
いつの時代のこと言ってんの?待ちが発生すること自体問題とは考えないの?
> 同時に変更する必要があれば、同じ奴に同時にやらせるだけ。(注文が増えるだけ)
> そして各自が変更したファイルをかき集めて、くっつけて終わりだ。
> お前らはこれもmergeと言ってる気がするが、
> これは「更新日時が新しければ上書きする」だけの話で、手動でも楽勝だし、
> プログラマはこれをmergeとは言わない。
更新日時見てマージとか、複数の人が並行開発した場合を考えてないよね
> 普通は担当を振り分けて、結果的に
> 「この期間にこのファイルを触るのは○○だけ」
> と交通整理される。
いつの時代のこと言ってんの?待ちが発生すること自体問題とは考えないの?
> 同時に変更する必要があれば、同じ奴に同時にやらせるだけ。(注文が増えるだけ)
> そして各自が変更したファイルをかき集めて、くっつけて終わりだ。
> お前らはこれもmergeと言ってる気がするが、
> これは「更新日時が新しければ上書きする」だけの話で、手動でも楽勝だし、
> プログラマはこれをmergeとは言わない。
更新日時見てマージとか、複数の人が並行開発した場合を考えてないよね
135デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/12(土) 13:47:01.20ID:h41UD2lS0 >>132-133
最初に言っておくべきだったが、俺が作るアプリはお前らGit屋向けではないよ。
プログラマ、或いはクリエイター向けで、
Gitなんか勉強したくない、何でもいいからバックアップと履歴が取れてればいい、という人向けだ。
だから内部DBには都合がいい物を使うだけで、SQLiteもあり得るし、途中での変更もあり得る。
Git屋はGitを使うべきだよ。そもそもGitがGit屋向けフルチューンだし、
だからこそ文句言われてるわけだが、目的外使用なのだからLinusから見れば完全に筋違いだ。
なら、俺が「プログラマ/クリエイター向け」のツールを提供しよう、というだけ。
最初に言っておくべきだったが、俺が作るアプリはお前らGit屋向けではないよ。
プログラマ、或いはクリエイター向けで、
Gitなんか勉強したくない、何でもいいからバックアップと履歴が取れてればいい、という人向けだ。
だから内部DBには都合がいい物を使うだけで、SQLiteもあり得るし、途中での変更もあり得る。
Git屋はGitを使うべきだよ。そもそもGitがGit屋向けフルチューンだし、
だからこそ文句言われてるわけだが、目的外使用なのだからLinusから見れば完全に筋違いだ。
なら、俺が「プログラマ/クリエイター向け」のツールを提供しよう、というだけ。
136デフォルトの名無しさん (ワッチョイ 4bbb-tcgO)
2022/11/12(土) 13:49:39.50ID:zxvXZjfz0137デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/12(土) 13:51:09.55ID:h41UD2lS0 >>134
それなら、お前にはフィットしないだろうし、お前の周りはGitを引き続き使えばいいだけ。
俺は127方式やもっと小規模(個人)レベルでの開発を想定したツールを提供するだけ。
目論見が外れてたら、思ったより売れなくて、俺の骨折り損なだけ。
これで何の問題もないだろ。
それなら、お前にはフィットしないだろうし、お前の周りはGitを引き続き使えばいいだけ。
俺は127方式やもっと小規模(個人)レベルでの開発を想定したツールを提供するだけ。
目論見が外れてたら、思ったより売れなくて、俺の骨折り損なだけ。
これで何の問題もないだろ。
138デフォルトの名無しさん (ワッチョイ 1563-sfiH)
2022/11/12(土) 14:12:47.90ID:403mRijK0 >>135>>137
長文君ソフト(仮)ではmergeのことを考えてないから
mergeを使う可能性があるなら長文君ソフト(仮)ではなくgitを使うべき
ってことだろ。なんなんだよGit屋って。
とっとと長文君ソフト(仮)スレ立てて移動しろ
長文君ソフト(仮)ではmergeのことを考えてないから
mergeを使う可能性があるなら長文君ソフト(仮)ではなくgitを使うべき
ってことだろ。なんなんだよGit屋って。
とっとと長文君ソフト(仮)スレ立てて移動しろ
139デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/12(土) 14:55:15.80ID:h41UD2lS0 >>119,124
--keep-base見たが、これ仕様が欠けてるんだよ。
だから君みたいな「あらかじめポインタ(branchまたはtag)を確保しておく」使い方しか出来ない。
rebaseが成功したらbranchは新しい方を指すので、古い方は名無しになってしまう。(放置したらgc対象)
だから本来の仕様は、 --keep-base "AsThisBranch" とかで、新しいbranch名かタグ名を指定出来ないとおかしい。
これ --keep-base だけしても名無しのままだから即削除されないだけで、じきにgcされるから、意味ないと思うぞ。
こういうところがGitは仕様が雑なんだよ。仕様の重要さをまるで理解してない。これただの落とし穴だよ。
そして落ちない工夫が「あらかじめbranchにしておく」君のやり方で、バッドノウハウになってるだけ。
そりゃ君らみたいなGit屋にとっては落とし穴は多ければ多いほど重宝されて都合がいいんだろうけどさ。
それでちょっと確認したいんだけど、君がbranchに拘ってるのは、もしかしてタグ付けてもgc対象になったりする?
何かこの辺雑だし、下手すればあり得るので怖いんだけどさ。
あと俺が欲しい仕様は、rebaseした奴の親としてrebase前の記録が全部保持されるタイプで、--keep-baseではない。
まあ俺はrebase無しで運用してこの辺回避するからいいんだけどさ。(つかmergeでいい)
--keep-base見たが、これ仕様が欠けてるんだよ。
だから君みたいな「あらかじめポインタ(branchまたはtag)を確保しておく」使い方しか出来ない。
rebaseが成功したらbranchは新しい方を指すので、古い方は名無しになってしまう。(放置したらgc対象)
だから本来の仕様は、 --keep-base "AsThisBranch" とかで、新しいbranch名かタグ名を指定出来ないとおかしい。
これ --keep-base だけしても名無しのままだから即削除されないだけで、じきにgcされるから、意味ないと思うぞ。
こういうところがGitは仕様が雑なんだよ。仕様の重要さをまるで理解してない。これただの落とし穴だよ。
そして落ちない工夫が「あらかじめbranchにしておく」君のやり方で、バッドノウハウになってるだけ。
そりゃ君らみたいなGit屋にとっては落とし穴は多ければ多いほど重宝されて都合がいいんだろうけどさ。
それでちょっと確認したいんだけど、君がbranchに拘ってるのは、もしかしてタグ付けてもgc対象になったりする?
何かこの辺雑だし、下手すればあり得るので怖いんだけどさ。
あと俺が欲しい仕様は、rebaseした奴の親としてrebase前の記録が全部保持されるタイプで、--keep-baseではない。
まあ俺はrebase無しで運用してこの辺回避するからいいんだけどさ。(つかmergeでいい)
140デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/12(土) 14:56:22.97ID:h41UD2lS0141デフォルトの名無しさん (ワッチョイ 4bcf-IBSA)
2022/11/12(土) 15:04:56.83ID:ajB/boEg0 まあ、こうやって素人考えをぶつけてみることでgitの良いところを再認識できるのであれば
まったくの無駄ではないのかもしれまい。
まったくの無駄ではないのかもしれまい。
142デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/12(土) 15:24:26.31ID:h41UD2lS0 >>141
× Gitの良いところ
○ Gitと被るところ
バックアップツールで必須な
・更新されたファイルを保存しておく
・変更されてないファイルは改めては取得しない
・変更履歴も保持し、必要なら古いファイルも取り出せる
・可能なら定期的に圧縮する
をGitが持ってるから、目的外使用されてるだけだな。
まあ基本アーキがいいから目的外使用でも本来ツールと戦えるということではあるけど。
ただ変更を酷く許してないところは頂けない。ここは俺はぶち壊す予定。
(間違ったファイルをコミットして大騒ぎ、結局全部作り直し、みたいのを無くして、ファイルを普通に消せるようにする。
ハッシュがずれたところで、ツリーには関係ない)
Gitのバックエンドは出来がいいんだと思うよ。多分。(俺が問題に遭遇してないだけかもだが)
Gitが糞なのは、フロントエンドと、仕様だね。ドキュメントは多すぎるが、よく書かれているし、少ないよりは断然いい。
× Gitの良いところ
○ Gitと被るところ
バックアップツールで必須な
・更新されたファイルを保存しておく
・変更されてないファイルは改めては取得しない
・変更履歴も保持し、必要なら古いファイルも取り出せる
・可能なら定期的に圧縮する
をGitが持ってるから、目的外使用されてるだけだな。
まあ基本アーキがいいから目的外使用でも本来ツールと戦えるということではあるけど。
ただ変更を酷く許してないところは頂けない。ここは俺はぶち壊す予定。
(間違ったファイルをコミットして大騒ぎ、結局全部作り直し、みたいのを無くして、ファイルを普通に消せるようにする。
ハッシュがずれたところで、ツリーには関係ない)
Gitのバックエンドは出来がいいんだと思うよ。多分。(俺が問題に遭遇してないだけかもだが)
Gitが糞なのは、フロントエンドと、仕様だね。ドキュメントは多すぎるが、よく書かれているし、少ないよりは断然いい。
143デフォルトの名無しさん (ワッチョイ c597-AMkR)
2022/11/12(土) 15:51:38.43ID:pkT2sKDg0 どうでもいいが95%はコード書いて検証してる時間で、複数人でレビューしながら開発とかでない限りGitに使う時間って5%くらいだろ。
皆プログラム書きつつGit触れて普通だと思うんだけど。それこそWeb業界では。難しいことになるときがないとは言わないけどたまーにでしょ。
グラフィックの感性で勝負とか、そういう特殊な世界のプログラマー以外でWeb系でGitも使えないんじゃ普通仕事にならないけどな。
皆プログラム書きつつGit触れて普通だと思うんだけど。それこそWeb業界では。難しいことになるときがないとは言わないけどたまーにでしょ。
グラフィックの感性で勝負とか、そういう特殊な世界のプログラマー以外でWeb系でGitも使えないんじゃ普通仕事にならないけどな。
144デフォルトの名無しさん (ワッチョイ 4bbb-tcgO)
2022/11/12(土) 16:11:19.82ID:zxvXZjfz0 >>142
git はバックアップツールじゃないぞ。
料理に例えるならお前が欲しがってるのは出来た料理を保管するための冷凍庫。
git が提供してるのは料理を作ったりアレンジするためのレシピ本(とその編集機能)
あとお前の言う「プログラマ」って、単なるコーダーで、本物のプログラマじゃないだろ。工場で刺し身にタンポポ載せてるやつは料理研究家じゃないからな間違えんなよ。
git はバックアップツールじゃないぞ。
料理に例えるならお前が欲しがってるのは出来た料理を保管するための冷凍庫。
git が提供してるのは料理を作ったりアレンジするためのレシピ本(とその編集機能)
あとお前の言う「プログラマ」って、単なるコーダーで、本物のプログラマじゃないだろ。工場で刺し身にタンポポ載せてるやつは料理研究家じゃないからな間違えんなよ。
145デフォルトの名無しさん (ワッチョイ 1563-sfiH)
2022/11/12(土) 17:09:07.94ID:403mRijK0146デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/12(土) 17:57:20.46ID:h41UD2lS0 >>143
いや5%(=24分)も十分多すぎだけどな。
まあそれはさておき、コードと開発体制も糞だったのを忘れてたから、
Gitの良い所: 基本アーキ、バックエンド、ドキュメント
Gitの糞な所: フロントエンド、仕様、コード、開発体制、(ドキュメント多すぎ)
となる。ここで、駄目なところは全部マネジメントに起因してる。
一般の会社なら課長/係長クラスで締める部分が締まってない。
これは指揮系統を持たない「バザール」の宿命で、他知らんけどこんなもんなのかもしれないが、
OSSという意味ではchromeとかもっとガッツリやってる(ように見える)し、少なくともregressionテストは流しまくってる。
あっちはGoogleが締めてるのかもしれないが、Gitは見た目1本もregressionテスト流してないのは駄目だろ。
Subversion(58内記事)ではregressionテストに落ちたらcommit禁止だったらしいし。これが普通。
CVSはこの辺ガッツリやりすぎて、テスト用の3万行超のシェルスクリプトに
(自分がcommitする部分の為の)新規テストを追加しなければcommitしちゃ駄目、とかで問題だったとも書いてあったが。
>>144
料理の味で勝負をしたいのに、冷蔵庫の使い方を100時間かけて勉強して、
冷蔵庫のご機嫌を取らないといけない事に、みんな文句言ってるんだよ。
ただこれはテクノロジーが達してないだけではある。
昔は航空機関士が同乗してたように。(乗ってて何とかなったとはとても思えないが、それはそれ)
今はGit屋が必要なレベルで、じきにもっと簡単な物が出てきてお役ご免になるはず。
出てこないようなら俺が作るよ、ということ。
いや5%(=24分)も十分多すぎだけどな。
まあそれはさておき、コードと開発体制も糞だったのを忘れてたから、
Gitの良い所: 基本アーキ、バックエンド、ドキュメント
Gitの糞な所: フロントエンド、仕様、コード、開発体制、(ドキュメント多すぎ)
となる。ここで、駄目なところは全部マネジメントに起因してる。
一般の会社なら課長/係長クラスで締める部分が締まってない。
これは指揮系統を持たない「バザール」の宿命で、他知らんけどこんなもんなのかもしれないが、
OSSという意味ではchromeとかもっとガッツリやってる(ように見える)し、少なくともregressionテストは流しまくってる。
あっちはGoogleが締めてるのかもしれないが、Gitは見た目1本もregressionテスト流してないのは駄目だろ。
Subversion(58内記事)ではregressionテストに落ちたらcommit禁止だったらしいし。これが普通。
CVSはこの辺ガッツリやりすぎて、テスト用の3万行超のシェルスクリプトに
(自分がcommitする部分の為の)新規テストを追加しなければcommitしちゃ駄目、とかで問題だったとも書いてあったが。
>>144
料理の味で勝負をしたいのに、冷蔵庫の使い方を100時間かけて勉強して、
冷蔵庫のご機嫌を取らないといけない事に、みんな文句言ってるんだよ。
ただこれはテクノロジーが達してないだけではある。
昔は航空機関士が同乗してたように。(乗ってて何とかなったとはとても思えないが、それはそれ)
今はGit屋が必要なレベルで、じきにもっと簡単な物が出てきてお役ご免になるはず。
出てこないようなら俺が作るよ、ということ。
147デフォルトの名無しさん (ワッチョイ 4bbb-tcgO)
2022/11/12(土) 18:26:38.13ID:zxvXZjfz0 >>146
だから料理の「レシピ本の作り方」をどんなに読み込んでも冷凍庫の使い方は載ってないぞ。少しなら冷凍庫の使い方のヒントになる部分もあるので勘違いしてるんだろうけど。
冷凍庫欲しかったた冷凍庫買え。レシピ本に冷蔵庫の代わりを求めるな。
だから料理の「レシピ本の作り方」をどんなに読み込んでも冷凍庫の使い方は載ってないぞ。少しなら冷凍庫の使い方のヒントになる部分もあるので勘違いしてるんだろうけど。
冷凍庫欲しかったた冷凍庫買え。レシピ本に冷蔵庫の代わりを求めるな。
148デフォルトの名無しさん (ワッチョイ 1563-sfiH)
2022/11/12(土) 18:35:41.91ID:403mRijK0149デフォルトの名無しさん (ワッチョイ adc2-owoj)
2022/11/12(土) 18:40:42.95ID:inQx9iPN0 うちの会社にも取引先にもgit使えないプログラマーなんていないけど
git屋わざわざ雇ってる会社のプログラマーてアホばっかりなん
git屋わざわざ雇ってる会社のプログラマーてアホばっかりなん
150デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/12(土) 18:42:32.33ID:h41UD2lS0151デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/12(土) 18:55:39.59ID:h41UD2lS0 >>149
> 公開リポジトリにプッシュしたコミットをリベースしてはいけない
> https://www.git-scm.com/book/ja/v2/Git-%E3%81%AE%E3%83%96%E3%83%A9%E3%83%B3%E3%83%81%E6%A9%9F%E8%83%BD-%E3%83%AA%E3%83%99%E3%83%BC%E3%82%B9
これは既知の問題だけど、これが既知とされるまでにだいぶ大騒ぎしてるはずだよ。
プルリクして、公開リポジトリの操作自体は分かってる奴がやる、
(その時点でおかしい構造ならまずローカルを修正させる)
というのがセオリーなんだろうけど、それをやるのがGit係=「Git屋」だよ。
他のVCSだとそもそもおかしい操作ができない(=操作出来る範囲が最初から制限されまくってる)からそうはならない。
全世界で唯一の履歴を持つんだ!とか壮大な風呂敷広げてるからこうなる。
ローカルリポジトリは好きにさせて、リポジトリ単位ではなく、commit単位での同期で十分だったはず。
> 公開リポジトリにプッシュしたコミットをリベースしてはいけない
> https://www.git-scm.com/book/ja/v2/Git-%E3%81%AE%E3%83%96%E3%83%A9%E3%83%B3%E3%83%81%E6%A9%9F%E8%83%BD-%E3%83%AA%E3%83%99%E3%83%BC%E3%82%B9
これは既知の問題だけど、これが既知とされるまでにだいぶ大騒ぎしてるはずだよ。
プルリクして、公開リポジトリの操作自体は分かってる奴がやる、
(その時点でおかしい構造ならまずローカルを修正させる)
というのがセオリーなんだろうけど、それをやるのがGit係=「Git屋」だよ。
他のVCSだとそもそもおかしい操作ができない(=操作出来る範囲が最初から制限されまくってる)からそうはならない。
全世界で唯一の履歴を持つんだ!とか壮大な風呂敷広げてるからこうなる。
ローカルリポジトリは好きにさせて、リポジトリ単位ではなく、commit単位での同期で十分だったはず。
152デフォルトの名無しさん (ワッチョイ 4bbb-tcgO)
2022/11/12(土) 18:56:07.38ID:zxvXZjfz0153デフォルトの名無しさん (ワッチョイ 4bbb-tcgO)
2022/11/12(土) 19:00:06.45ID:zxvXZjfz0154デフォルトの名無しさん (ワッチョイ 2514-H0Ic)
2022/11/12(土) 19:46:47.33ID:Cj/ueztB0 >>114
> ただ、切り替わらなくてもいい共通ファイル類はその場合には .git 階層に置くんだよ。
複雑な仕組みを入れるな。
gitは、gitを使わない場合と全く同じ形のディレクトリ構造に保たれている
バージョン管理をしない通常の開発フェーズでは、gitを使わないのと全く同じ
お前が言うやり方では、gitのためにディレクト構造を作らないといけなくなる
あ~ほらし
まあね、この程度なんだよ
> ただ、切り替わらなくてもいい共通ファイル類はその場合には .git 階層に置くんだよ。
複雑な仕組みを入れるな。
gitは、gitを使わない場合と全く同じ形のディレクトリ構造に保たれている
バージョン管理をしない通常の開発フェーズでは、gitを使わないのと全く同じ
お前が言うやり方では、gitのためにディレクト構造を作らないといけなくなる
あ~ほらし
まあね、この程度なんだよ
155デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/12(土) 20:11:12.01ID:h41UD2lS0 >>154
> gitのためにディレクト構造を作らないといけなくなる
ここら辺がGit信者が勘違いしまくってる点だよ。
これは
× Gitの為に
○ branchの為に
であって、ツールを『何も使わずに』branchを用意する場合の構造と同じなんだ。
本来ツールは「使えば便利」で十分なんだよ。
例えば何度も言われてる「電動ドリル」なら、
ユーザーが求めていたもの: 手動ドリルだと手が疲れるので、
手が疲れないだけで、使い勝手や小回りの良さは手動ドリルと同じ程度の電動ドリル
であって、
Git: 世界中どんな物にも穴が開けられる据え付け型超高性能電動ドリル、
ただし取り扱い要注意なので1000ページの説明書を読め、
なんて要らないんだよ。可能であれば、それ以前のユーザーがやっていた方式と
出来るだけシームレスに接続出来た方がいい。
だからこの点は、Subversionの方が仕様として正しい。
上書き切換方式がよければ、Opt-inにすべき。
ただ高級機は必要ではあるので、ここら辺はGitが悪いと言うよりは、
普及機がないからそのまま高級機を使ってて愚痴ってる奴が悪い。
だから俺が普及機を用意してやる、ということ。
> gitのためにディレクト構造を作らないといけなくなる
ここら辺がGit信者が勘違いしまくってる点だよ。
これは
× Gitの為に
○ branchの為に
であって、ツールを『何も使わずに』branchを用意する場合の構造と同じなんだ。
本来ツールは「使えば便利」で十分なんだよ。
例えば何度も言われてる「電動ドリル」なら、
ユーザーが求めていたもの: 手動ドリルだと手が疲れるので、
手が疲れないだけで、使い勝手や小回りの良さは手動ドリルと同じ程度の電動ドリル
であって、
Git: 世界中どんな物にも穴が開けられる据え付け型超高性能電動ドリル、
ただし取り扱い要注意なので1000ページの説明書を読め、
なんて要らないんだよ。可能であれば、それ以前のユーザーがやっていた方式と
出来るだけシームレスに接続出来た方がいい。
だからこの点は、Subversionの方が仕様として正しい。
上書き切換方式がよければ、Opt-inにすべき。
ただ高級機は必要ではあるので、ここら辺はGitが悪いと言うよりは、
普及機がないからそのまま高級機を使ってて愚痴ってる奴が悪い。
だから俺が普及機を用意してやる、ということ。
156デフォルトの名無しさん (ワッチョイ 2514-H0Ic)
2022/11/12(土) 20:16:31.82ID:Cj/ueztB0 > であって、ツールを『何も使わずに』branchを用意する場合の構造と同じなんだ。
> 本来ツールは「使えば便利」で十分なんだよ。
その発想が根本的に間違っている
本来ツールは「なければ不便過ぎて苦痛」だから作られた
> 本来ツールは「使えば便利」で十分なんだよ。
その発想が根本的に間違っている
本来ツールは「なければ不便過ぎて苦痛」だから作られた
157デフォルトの名無しさん (ワッチョイ 2514-H0Ic)
2022/11/12(土) 20:18:52.70ID:Cj/ueztB0 × ユーザーが求めていたもの: 手動ドリルだと手が疲れるので、
手が疲れないだけで、使い勝手や小回りの良さは手動ドリルと同じ程度の電動ドリル
○ ユーザーが求めていたもの: 手動ドリルだと作業が面倒すぎて時間がかかり過ぎで
現実時間で解決することができない。人間には不可能な問題を解決するためものが電動ドリル
手が疲れないだけで、使い勝手や小回りの良さは手動ドリルと同じ程度の電動ドリル
○ ユーザーが求めていたもの: 手動ドリルだと作業が面倒すぎて時間がかかり過ぎで
現実時間で解決することができない。人間には不可能な問題を解決するためものが電動ドリル
158デフォルトの名無しさん (ワッチョイ 2514-H0Ic)
2022/11/12(土) 20:19:33.56ID:Cj/ueztB0 Git: 短時間で遠くまで移動できる自動車
ただし取り扱い要注意なので免許を取れ
ただし取り扱い要注意なので免許を取れ
159デフォルトの名無しさん (ワッチョイ adc2-owoj)
2022/11/12(土) 20:27:52.45ID:inQx9iPN0 force pushでもされない限り復旧不能なリポジトリ破壊なんてされないけどな
サーバー側でforce禁止にすればいいし
サーバー側でforce禁止にすればいいし
160デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/12(土) 20:40:30.40ID:h41UD2lS0 まあとにかくだ、基本思想が違ってて、俺は「簡単は正義」だから、
Git: 使いこなせない馬鹿が悪い
俺: 難しい物を作る馬鹿が悪い
で、平行線なんだよ。
ただお前らからは普及機は出てこないのは分かったから、俺が作るよ。
(もっと調査してからだが)
俺は、難しくなる妥当な理由があるのなら仕方ないが、そうでなければ簡単にしろ、で
ジョブスの「ボタンは一個にしろ!!!」は肯定派。(Apple使う気ないけどさ)
つかよ、Gitの勉強じゃなくて、お前らコードの勉強しろよ、だからな。
あのパッチの顛末、マジで酷いぞ。C読める奴が居たら本当に聞いてみ。
Git等のツールは、最終的にはソフトウェアのコードの品質を上げる為であって、
Gitに習熟したけど糞コードしか書けません、では完全に本末転倒だ。
Git: 使いこなせない馬鹿が悪い
俺: 難しい物を作る馬鹿が悪い
で、平行線なんだよ。
ただお前らからは普及機は出てこないのは分かったから、俺が作るよ。
(もっと調査してからだが)
俺は、難しくなる妥当な理由があるのなら仕方ないが、そうでなければ簡単にしろ、で
ジョブスの「ボタンは一個にしろ!!!」は肯定派。(Apple使う気ないけどさ)
つかよ、Gitの勉強じゃなくて、お前らコードの勉強しろよ、だからな。
あのパッチの顛末、マジで酷いぞ。C読める奴が居たら本当に聞いてみ。
Git等のツールは、最終的にはソフトウェアのコードの品質を上げる為であって、
Gitに習熟したけど糞コードしか書けません、では完全に本末転倒だ。
161デフォルトの名無しさん (ワッチョイ 1563-sfiH)
2022/11/12(土) 21:02:25.04ID:403mRijK0162デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/12(土) 21:26:19.25ID:h41UD2lS0 >>161
いや101の仕様で手こずると思ってるお前もかなりヤバいけどな。
これも周りにプログラマが居たら聞いてみ。
ただ、自分で使う用に動けばいい物と、他人が(デタラメに)使う用に作るのはだいぶ違うんだ。
だからきちんと状況確認して仕様はしっかり詰めるべきなんだよ。
Gitにはこの辺の感覚がない。
まあLinusが個人的に必要だから作った、完全特定個人向けチューニングだからではあるが。
この辺がGit(を使わされる側)の不幸なところだよ。
いや101の仕様で手こずると思ってるお前もかなりヤバいけどな。
これも周りにプログラマが居たら聞いてみ。
ただ、自分で使う用に動けばいい物と、他人が(デタラメに)使う用に作るのはだいぶ違うんだ。
だからきちんと状況確認して仕様はしっかり詰めるべきなんだよ。
Gitにはこの辺の感覚がない。
まあLinusが個人的に必要だから作った、完全特定個人向けチューニングだからではあるが。
この辺がGit(を使わされる側)の不幸なところだよ。
163デフォルトの名無しさん (ワッチョイ 2514-H0Ic)
2022/11/12(土) 21:31:32.81ID:Cj/ueztB0 >>160
> Git: 使いこなせない馬鹿が悪い
> 俺: 難しい物を作る馬鹿が悪い
でも、難しいと思ってるはお前だけなんだ
お前が馬鹿というだけじゃね?
それとも完全自動運転車が登場するまで
ずっと無能呼ばわりされたいということかね?
> Git: 使いこなせない馬鹿が悪い
> 俺: 難しい物を作る馬鹿が悪い
でも、難しいと思ってるはお前だけなんだ
お前が馬鹿というだけじゃね?
それとも完全自動運転車が登場するまで
ずっと無能呼ばわりされたいということかね?
164デフォルトの名無しさん (アウアウウー Saa9-9aJV)
2022/11/12(土) 21:46:15.33ID:M1Nw2seMa165デフォルトの名無しさん (ワッチョイ 4bcf-IBSA)
2022/11/12(土) 22:10:50.71ID:ajB/boEg0 >環境の準備やチーム内のルールも知らないと仕事始められないので。
その点に関してはsubversionの方が難しい気がする。
その点に関してはsubversionの方が難しい気がする。
166デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/12(土) 22:19:07.47ID:h41UD2lS0 >>163
いや結局>>137なんだよ。
お互いの見解は異なるし、同意する必要もない。ただフォークすればいい。
俺は売れそうだと思ったら作るだけ、欲しい奴は乗っかればいいだけ、要らない奴は使わなければいいだけ。
俺は(というよりプログラマ全般は)ツールだけ使えてコード書けない奴は死ねばいいとしか思ってないから、方向性もいい。
俺の目論見が外れればお前らの勝ち、お前らが食うのに困れば俺の勝ち、勝敗はフォークで、だ。
俺が想定してるのが時代遅れで馬鹿だらけの現場なのか、お前らが壮大に勘違いしてたのかも、それで分かるよ。
ただ当たり前だがこのスレはGitを理解してるか、最低限理解しようとしてる連中の場所であって、
俺が相手にしようとしてる、理解する気もない連中の溜まり場ではないから、
壮絶アウェイになって然るべきで、散発でも賛同者や擁護が出てくる時点でヤバイと気づける位の方がいいと思うが。
スレは立てるが、肝心のアプリ名を今考え直してるところだから、来週まで待ってくれ。
GitBucket気に入ってたのにちくしょ~。
いや結局>>137なんだよ。
お互いの見解は異なるし、同意する必要もない。ただフォークすればいい。
俺は売れそうだと思ったら作るだけ、欲しい奴は乗っかればいいだけ、要らない奴は使わなければいいだけ。
俺は(というよりプログラマ全般は)ツールだけ使えてコード書けない奴は死ねばいいとしか思ってないから、方向性もいい。
俺の目論見が外れればお前らの勝ち、お前らが食うのに困れば俺の勝ち、勝敗はフォークで、だ。
俺が想定してるのが時代遅れで馬鹿だらけの現場なのか、お前らが壮大に勘違いしてたのかも、それで分かるよ。
ただ当たり前だがこのスレはGitを理解してるか、最低限理解しようとしてる連中の場所であって、
俺が相手にしようとしてる、理解する気もない連中の溜まり場ではないから、
壮絶アウェイになって然るべきで、散発でも賛同者や擁護が出てくる時点でヤバイと気づける位の方がいいと思うが。
スレは立てるが、肝心のアプリ名を今考え直してるところだから、来週まで待ってくれ。
GitBucket気に入ってたのにちくしょ~。
167デフォルトの名無しさん (ワッチョイ 4b8f-X3QC)
2022/11/12(土) 22:20:47.69ID:/s1n3tt70 難しいなら入門書熟読すればいいし、わからないなら素直に聞けばいいんだよ
それすらやらず、ドキュメント読みたくないとか自分の思想に合わないからgitはクソだとか、小学生並みのわがまま言ってるから無能と言われる
それすらやらず、ドキュメント読みたくないとか自分の思想に合わないからgitはクソだとか、小学生並みのわがまま言ってるから無能と言われる
168デフォルトの名無しさん (ワッチョイ 4bbb-tcgO)
2022/11/12(土) 22:27:14.56ID:zxvXZjfz0 >>166
git は馬鹿に売るために作った製品じゃないのでフールプルーフじゃないんだぜ。無料のオープンソースだからな。
作った人自身が使い易くて余計な時間を消費しないのが最優先。
文句あったらこれより良い製品をオープンソースで公開してみろ。ソース読んで良ければ尊敬するかもしれない。
git は馬鹿に売るために作った製品じゃないのでフールプルーフじゃないんだぜ。無料のオープンソースだからな。
作った人自身が使い易くて余計な時間を消費しないのが最優先。
文句あったらこれより良い製品をオープンソースで公開してみろ。ソース読んで良ければ尊敬するかもしれない。
169デフォルトの名無しさん (ワッチョイ 4bcf-IBSA)
2022/11/12(土) 22:54:07.27ID:ajB/boEg0 この手のツールは機能や使い勝手の多少の違いよりも信頼性や将来性が重要なものだからな。
コミュニティの立ち上げどころか協力者を一人集めることすら難しそうなこの人が何を夢見ているんだろうか。
コミュニティの立ち上げどころか協力者を一人集めることすら難しそうなこの人が何を夢見ているんだろうか。
170デフォルトの名無しさん (ワッチョイ 4bbb-tcgO)
2022/11/12(土) 23:22:40.78ID:zxvXZjfz0 長文君や長文君が利用者と考える馬鹿ユーザーは、信頼できるチームでメンテナンスが継続的なされるかとか、ツールに透明性があるかとか一切気にしないのかもしれない。
171デフォルトの名無しさん (アウアウウー Saa9-9aJV)
2022/11/12(土) 23:25:48.94ID:M1Nw2seMa 沢山語る事かある人達楽しそうだな。
VCS はエディタの補助機能で世代交代する事もあるけど、なんとなく使えてたらOK! って思ってた。
VCS はエディタの補助機能で世代交代する事もあるけど、なんとなく使えてたらOK! って思ってた。
172デフォルトの名無しさん (ワッチョイ 1563-sfiH)
2022/11/12(土) 23:27:07.46ID:403mRijK0173デフォルトの名無しさん (ワッチョイ 4b8f-X3QC)
2022/11/13(日) 00:04:02.56ID:Qr8ucfLW0 どうせやるならgithubにあげて欲しいものだ
174デフォルトの名無しさん (ワッチョイ 2302-9fhR)
2022/11/13(日) 02:55:30.08ID:XlBdLl1o0 git にフォークなんて無いんだが。
git のあいうえおも分からないやつが
git の批判してても何も響かないんだよ。
いい加減去って欲しいわ。
git のあいうえおも分からないやつが
git の批判してても何も響かないんだよ。
いい加減去って欲しいわ。
175デフォルトの名無しさん (ワッチョイ a359-VnLK)
2022/11/13(日) 05:33:33.29ID:S7gZHHW/0 これのソフト?は内容は世界中の人と共有されるの?分散型ってどういうこと?
176デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/13(日) 06:54:51.14ID:Eh77ZCvU0 考えてみたが、やっぱGitは根本的に思想が俺とは違うんだな。
俺はツールはあくまでアプリの品質を上げる手段だと思ってる。
ここまではおそらく共通なのだが、問題はこの先で、俺は重要な順に、
A. アプリそのものの品質。つまり必要な機能に深刻なバグがないこと。コードの品質がこれに直結する。(コードが本体)
B. 使いやすさ。簡単は正義。使えない機能は存在してないのと同じ。直感的に使えればドキュメントすら必要ない。
C. 持続性。つまり自分が使いたい期間(未来)中ずっと使えるか。
なんだが、Git陣営は全く逆でC>>B>>Aの順に見える。
それはこのスレ内でも散見され、俺は釣りだと思っていたが、マジっぽい。つまり、
C. コミュニティに人を集めれば自然と持続性は確保出来る。つまり人数が一番重要。これを取り持つのがツール(ツールやcommitメッセージが本体)
B. ドキュメントを整備しまくれば、後はがんばって読めばいいだけ。
A. コードの品質なんて後から付いてくる。バグも誰かが勝手に直してくれる。
Git陣営はマジでコードの品質を上げる努力を何一つしてない。具体的には、
・regressionテストを1本も流してない。
・レビューも全くしてない。(マジで、見た瞬間落とされるコードを素通し)
・CodeOfCoductは重要だが、CodingRuleは要らない。
CodeOfConductは最近のポリコレで生まれた、「人の」振る舞いを規定するものだ。
これに対してCodingRuleは「コードの」振る舞いを規定するもので、
CodingRuleなしでCodeOfConductだけってのは、コードはどうでもいい、問題は人だ!と言ってるわけだ。
『人さえいれば、全て何とかなるんだ!』という思想だ。
ただ俺からすると、見る限り完全に「善意のただ乗り」であって、
少なくともコードの品質を上げる努力してないと協力する気にならないよ。
(ITがいくら自動化しても、最終的には人なのは事実としても、コードの質を直接的に改善する努力を全くしないのは不味いだろ)
俺はツールはあくまでアプリの品質を上げる手段だと思ってる。
ここまではおそらく共通なのだが、問題はこの先で、俺は重要な順に、
A. アプリそのものの品質。つまり必要な機能に深刻なバグがないこと。コードの品質がこれに直結する。(コードが本体)
B. 使いやすさ。簡単は正義。使えない機能は存在してないのと同じ。直感的に使えればドキュメントすら必要ない。
C. 持続性。つまり自分が使いたい期間(未来)中ずっと使えるか。
なんだが、Git陣営は全く逆でC>>B>>Aの順に見える。
それはこのスレ内でも散見され、俺は釣りだと思っていたが、マジっぽい。つまり、
C. コミュニティに人を集めれば自然と持続性は確保出来る。つまり人数が一番重要。これを取り持つのがツール(ツールやcommitメッセージが本体)
B. ドキュメントを整備しまくれば、後はがんばって読めばいいだけ。
A. コードの品質なんて後から付いてくる。バグも誰かが勝手に直してくれる。
Git陣営はマジでコードの品質を上げる努力を何一つしてない。具体的には、
・regressionテストを1本も流してない。
・レビューも全くしてない。(マジで、見た瞬間落とされるコードを素通し)
・CodeOfCoductは重要だが、CodingRuleは要らない。
CodeOfConductは最近のポリコレで生まれた、「人の」振る舞いを規定するものだ。
これに対してCodingRuleは「コードの」振る舞いを規定するもので、
CodingRuleなしでCodeOfConductだけってのは、コードはどうでもいい、問題は人だ!と言ってるわけだ。
『人さえいれば、全て何とかなるんだ!』という思想だ。
ただ俺からすると、見る限り完全に「善意のただ乗り」であって、
少なくともコードの品質を上げる努力してないと協力する気にならないよ。
(ITがいくら自動化しても、最終的には人なのは事実としても、コードの質を直接的に改善する努力を全くしないのは不味いだろ)
177デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/13(日) 06:55:24.88ID:Eh77ZCvU0 俺はコードの品質/アプリの仕様そのものが一番重要で、それさえあれば全てが上手く行く、と思ってる。つまり、
仕様が簡単で直感的なら、ドキュメントを整備するまでもないし、
バグがなければ、後は「十分動く」程度のメンテで済む。だから最初から出来る限り品質の高いアプリを投入すべきだ。
ここら辺は「伽藍」では共通認識のはず。『コード/仕様さえよければ、全て何とかなるんだ!』的な思想だ。
ただここら辺を「バザール」でひっくり返したから話題になったわけだが、やっぱこれは違うよな~とは思うよ。
これって「善意のただ乗り」の仕方が世界一上手かっただけで、みんながこれをやり出したら回らないよ。
仕様が簡単で直感的なら、ドキュメントを整備するまでもないし、
バグがなければ、後は「十分動く」程度のメンテで済む。だから最初から出来る限り品質の高いアプリを投入すべきだ。
ここら辺は「伽藍」では共通認識のはず。『コード/仕様さえよければ、全て何とかなるんだ!』的な思想だ。
ただここら辺を「バザール」でひっくり返したから話題になったわけだが、やっぱこれは違うよな~とは思うよ。
これって「善意のただ乗り」の仕方が世界一上手かっただけで、みんながこれをやり出したら回らないよ。
178デフォルトの名無しさん (ワッチョイ 2514-H0Ic)
2022/11/13(日) 07:21:09.51ID:MdOkAF1j0179デフォルトの名無しさん (ワッチョイ 2514-H0Ic)
2022/11/13(日) 07:23:03.38ID:MdOkAF1j0 > 俺はコードの品質/アプリの仕様そのものが一番重要で、それさえあれば全てが上手く行く、と思ってる。
うん。やっぱり間違ってるね。
そんなんだから、POSIX原理主義者みたいに、一行書いてデバッグしていれば
バグなんか入らない!とかあり得ない主張をすることになるんだよ。
うん。やっぱり間違ってるね。
そんなんだから、POSIX原理主義者みたいに、一行書いてデバッグしていれば
バグなんか入らない!とかあり得ない主張をすることになるんだよ。
180デフォルトの名無しさん (ワッチョイ 2514-H0Ic)
2022/11/13(日) 07:26:49.86ID:MdOkAF1j0181デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/13(日) 07:49:57.39ID:Eh77ZCvU0 >>179,180
(内容が違うが答えは同じで)
いやあれはそういう意味ではない。どう読むかも自由ではあるが。
ただやっぱり、ここら辺はフォークで決着すべきで、それが正しいんだよ。
各自が思う方向に、突っ走ってみればいい。
アプリの品質も、最終的にはユーザー数*満足度の総和だから、Gitのやり方が間違ってる訳でもないんだろうさ。
でも俺は違うと思うから、違う方向を試す。
(内容が違うが答えは同じで)
いやあれはそういう意味ではない。どう読むかも自由ではあるが。
ただやっぱり、ここら辺はフォークで決着すべきで、それが正しいんだよ。
各自が思う方向に、突っ走ってみればいい。
アプリの品質も、最終的にはユーザー数*満足度の総和だから、Gitのやり方が間違ってる訳でもないんだろうさ。
でも俺は違うと思うから、違う方向を試す。
182デフォルトの名無しさん (ワッチョイ 1563-sfiH)
2022/11/13(日) 08:08:13.98ID:md3JoP5e0183デフォルトの名無しさん (ワッチョイ a37c-H0Ic)
2022/11/13(日) 11:08:14.23ID:4MPzkrV00 気に入らないなら自分で作ればいいだけの話
gitも元はそういう思想から生まれているんだし
それが出来なくて文句言うだけなのは恥ずかしい
gitも元はそういう思想から生まれているんだし
それが出来なくて文句言うだけなのは恥ずかしい
184デフォルトの名無しさん (ワッチョイ 4b8f-X3QC)
2022/11/13(日) 11:25:35.33ID:Qr8ucfLW0 gi自体tの開発の流れってLinuxカーネル開発とほぼ変わらないと思ってるけど違うのかな
1回もレビュー通してないとかいい加減なこと言う人がいるので気になった
1回もレビュー通してないとかいい加減なこと言う人がいるので気になった
185デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/13(日) 12:40:13.79ID:Eh77ZCvU0 >>184
全通しならレビューの意味がない。よく分からん所でなあなあでウェットなんだよ。
例えば>>58の中盤以降、「どうやってOSSを飼い慣らすか」になっててすさまじく気持ち悪い。
これはタイトル「オープンソースソフトウェアの育て方」からしてそうではあるけども。
しかも書いた奴がCVSにも相当関わってて、Subversionも率いてた奴だってのがかなりキテる。
そして同様の雰囲気をGitからも感じる。
俺は「自分が使ってるツールにバグがあるのは自分も困るので、協力したい」とか、
「自分もそれが欲しいから」という、
個人の利益の追求の方向が偶々揃った程度で連携すべきで、それで十分だと思ってるんだよ。
だから「売れそうなら作るし、欲しければ乗ればいいし、要らないなら無視でいい」になる。(166)
勿論解消も各自の自由で、売れなさそうなら作らないし、ゴミなら使わない、でいい。
極めてドライな連携だ。
そして一般的に匿名掲示板はこの程度だから、俺は気に入ってる。
対して上記本やGit、いかにcontributerを手なずけてコードをタダで貰うか、みたいになってて、本当に気持ち悪い。
それがLinusが世界一上手かったことではあるし、それが成立するという驚きが「伽藍とバザール」だけども。
>>95の内容も若干キモイ。
Linusの個人崇拝になってて、Linus自身はそれにちょっと困ってる、ってのは分かる気がするよ。
コードはコードの内容だけで評価するべきで、
誰が送ってきたとか、これまで彼がどれほど貢献したとか、そういうの、勘案すべきではない。
落とすべきコードはドライに落とすべき。
CodeOfConductでポリコレ宣言せずとも、こんな事はみんな普通にやってきたことだよ。
が、まあ何か思惑はあるのだろうよ。
究極のコードクレクレ君を見せてやるぜ!!!と言われてる状態なので、とりあえず見物だ。
全通しならレビューの意味がない。よく分からん所でなあなあでウェットなんだよ。
例えば>>58の中盤以降、「どうやってOSSを飼い慣らすか」になっててすさまじく気持ち悪い。
これはタイトル「オープンソースソフトウェアの育て方」からしてそうではあるけども。
しかも書いた奴がCVSにも相当関わってて、Subversionも率いてた奴だってのがかなりキテる。
そして同様の雰囲気をGitからも感じる。
俺は「自分が使ってるツールにバグがあるのは自分も困るので、協力したい」とか、
「自分もそれが欲しいから」という、
個人の利益の追求の方向が偶々揃った程度で連携すべきで、それで十分だと思ってるんだよ。
だから「売れそうなら作るし、欲しければ乗ればいいし、要らないなら無視でいい」になる。(166)
勿論解消も各自の自由で、売れなさそうなら作らないし、ゴミなら使わない、でいい。
極めてドライな連携だ。
そして一般的に匿名掲示板はこの程度だから、俺は気に入ってる。
対して上記本やGit、いかにcontributerを手なずけてコードをタダで貰うか、みたいになってて、本当に気持ち悪い。
それがLinusが世界一上手かったことではあるし、それが成立するという驚きが「伽藍とバザール」だけども。
>>95の内容も若干キモイ。
Linusの個人崇拝になってて、Linus自身はそれにちょっと困ってる、ってのは分かる気がするよ。
コードはコードの内容だけで評価するべきで、
誰が送ってきたとか、これまで彼がどれほど貢献したとか、そういうの、勘案すべきではない。
落とすべきコードはドライに落とすべき。
CodeOfConductでポリコレ宣言せずとも、こんな事はみんな普通にやってきたことだよ。
が、まあ何か思惑はあるのだろうよ。
究極のコードクレクレ君を見せてやるぜ!!!と言われてる状態なので、とりあえず見物だ。
186デフォルトの名無しさん (アウアウウー Saa9-9aJV)
2022/11/13(日) 12:51:13.66ID:QilzRsUJa 世間一般のgitユーザーって Sourcetree 使ってるんかな。
わかばちゃん、サルでもわかる、おもしろいほどわかる、あたりは GUI の使い方書いているみたいだし。
コマンドライン使う説明の本は中級に分類されてそう。
Linux で使っているので Win/Mac に Sourcetree 導入しようとも思わないけど。
わかばちゃん、サルでもわかる、おもしろいほどわかる、あたりは GUI の使い方書いているみたいだし。
コマンドライン使う説明の本は中級に分類されてそう。
Linux で使っているので Win/Mac に Sourcetree 導入しようとも思わないけど。
187デフォルトの名無しさん (ワッチョイ adc2-3TKi)
2022/11/13(日) 14:05:38.02ID:cAl+3nYf0188デフォルトの名無しさん (アウアウウー Saa9-9aJV)
2022/11/13(日) 14:26:57.07ID:OYfEeFSra189デフォルトの名無しさん (ワッチョイ 1563-sfiH)
2022/11/13(日) 14:31:18.44ID:md3JoP5e0190デフォルトの名無しさん (ワッチョイ 4bbb-tcgO)
2022/11/13(日) 14:56:08.51ID:8vm+7sfe0 >>176
無学な長文君らしい発言だなあ。
理解は経験に裏付けられている必要がある。俺には非常に直感的で分かり易い仕様だよ。
他人のソース(自分の過去のソースとかでも良いけど)を頻繁に読まないやつにはとっつき難いんだろうけど。
共同開発の初心者が git 難しいというのは分かる。でも彼らは自分の共同開発の経験が足りないことを理解している。
長文君は自分の経験が足りないことを棚上げして共同開発を全否定することに全力を傾けてる。伽藍とバザールとかいつの時代の話だ、2周くらい周回遅れ。
他人(や過去の自分)と共同開発しないやつに git はいらないよ。そのための専用ツールだからな。
無学な長文君らしい発言だなあ。
理解は経験に裏付けられている必要がある。俺には非常に直感的で分かり易い仕様だよ。
他人のソース(自分の過去のソースとかでも良いけど)を頻繁に読まないやつにはとっつき難いんだろうけど。
共同開発の初心者が git 難しいというのは分かる。でも彼らは自分の共同開発の経験が足りないことを理解している。
長文君は自分の経験が足りないことを棚上げして共同開発を全否定することに全力を傾けてる。伽藍とバザールとかいつの時代の話だ、2周くらい周回遅れ。
他人(や過去の自分)と共同開発しないやつに git はいらないよ。そのための専用ツールだからな。
191デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/13(日) 18:44:25.19ID:Eh77ZCvU0 >>190
俺の価値観からすると、ツール使えるだけで、
肝心の、あのソースコードと開発体制と仕様のヤバさに気づけないのは、本末転倒だと思うけどな。
まあ平行線だからいいよ。決着はforkで、だ。
俺が作るツールは、君ら向けではないし、実際君らには無価値だよ。
そもそもGitを使ってるだけで、Gitを使う為のアプリではないからね。
(これが誤解の元だったから、Gitと冠するのは止めようかと思案中)
だから第一弾で君らが死ぬことはない。
Gitを殺せるとしたら第二弾以降だが、まあ、これも無理だろうよ。これが目的でもないし。
むしろ、Gitを目的外使用してる連中を引き受けるので、お前らは居心地がよくなるかもしれん。
Gitはmerge専用機としてはよく出来てるよ。
しかし一般開発には、通常commit(親が一つのcommit)の方が断然多くて、今使ってる連中の大半もそうだと俺は思うけど。
それはさておき、多分Gitや他気持ち悪い系OSSが維持出来てるのは、
初音ミクの時に言われた、「ヘタウマ」じゃないかと。
日清カップヌードルでも言われてるが、要は「チョイ足し」したくなる絶妙な「ヘタウマ」ならソースコードも集まりやすい。
Linusが書いた完全無欠のコードでは、誰も手が出せないからね。
だからソースコードがある程度ゴミなのは、成功してるOSSの宿命なのかもしれん。
界隈よく知らないけど、例の鳥の詩(国歌)、完成してる感があって2次が少ない(ほぼ無い)と聞くし。
俺の価値観からすると、ツール使えるだけで、
肝心の、あのソースコードと開発体制と仕様のヤバさに気づけないのは、本末転倒だと思うけどな。
まあ平行線だからいいよ。決着はforkで、だ。
俺が作るツールは、君ら向けではないし、実際君らには無価値だよ。
そもそもGitを使ってるだけで、Gitを使う為のアプリではないからね。
(これが誤解の元だったから、Gitと冠するのは止めようかと思案中)
だから第一弾で君らが死ぬことはない。
Gitを殺せるとしたら第二弾以降だが、まあ、これも無理だろうよ。これが目的でもないし。
むしろ、Gitを目的外使用してる連中を引き受けるので、お前らは居心地がよくなるかもしれん。
Gitはmerge専用機としてはよく出来てるよ。
しかし一般開発には、通常commit(親が一つのcommit)の方が断然多くて、今使ってる連中の大半もそうだと俺は思うけど。
それはさておき、多分Gitや他気持ち悪い系OSSが維持出来てるのは、
初音ミクの時に言われた、「ヘタウマ」じゃないかと。
日清カップヌードルでも言われてるが、要は「チョイ足し」したくなる絶妙な「ヘタウマ」ならソースコードも集まりやすい。
Linusが書いた完全無欠のコードでは、誰も手が出せないからね。
だからソースコードがある程度ゴミなのは、成功してるOSSの宿命なのかもしれん。
界隈よく知らないけど、例の鳥の詩(国歌)、完成してる感があって2次が少ない(ほぼ無い)と聞くし。
192デフォルトの名無しさん (ワッチョイ 4bcf-IBSA)
2022/11/13(日) 18:50:03.67ID:2jgXqyDd0 まるで「描かないマンガ家」
193デフォルトの名無しさん (ワッチョイ 2514-H0Ic)
2022/11/13(日) 19:03:22.84ID:53QTWROr0 >>191
無能は口を閉じろ
無能は口を閉じろ
194デフォルトの名無しさん (ワッチョイ 4b46-X/jP)
2022/11/13(日) 19:26:29.95ID:2N/MD+QP0 Gitと競ってたDVCSは他にもいくつもあったが全部消えた
195デフォルトの名無しさん (ワッチョイ 1563-sfiH)
2022/11/13(日) 19:35:13.58ID:md3JoP5e0196デフォルトの名無しさん (ワッチョイ 2514-H0Ic)
2022/11/13(日) 19:38:47.70ID:53QTWROr0 最強のバージョン管理ツールを
伽藍方式で今考えてるからちょっと待て
最初から完璧な設計でバグもまったくない
100年ぐらいかかる予定だ
伽藍方式で今考えてるからちょっと待て
最初から完璧な設計でバグもまったくない
100年ぐらいかかる予定だ
197デフォルトの名無しさん (ワッチョイ b57b-3eqv)
2022/11/13(日) 20:22:53.70ID:Eh77ZCvU0 >>195
> その「気持ち悪い」開発方法でしっかりしたソフトが開発できてるから
> それをベースにするってことだろ
違うぞ。既に書いたが>>118,142
というかね、俺はその辺お前らGit勢とは違ってポリコレはしない。
コードに政治は持ち込まない。使えれば使う、程度だ。
SQLiteだとGitの再開発が必要になるのが無駄だ。SVNの方が良ければ乗り換えるかもだが。
(というかバケツ的使用感をSVNが提供してたらそれで終わり、俺がアプリ作るまでもない。
これって今無いのか?
逆にSVNもGitと同様政治的で、バケツなんて提供してヤラネ、学習して使え!
なら俺がバケツアプリSVN版も売れそうなら作るかもだが)
> その「気持ち悪い」開発方法でしっかりしたソフトが開発できてるから
> それをベースにするってことだろ
違うぞ。既に書いたが>>118,142
というかね、俺はその辺お前らGit勢とは違ってポリコレはしない。
コードに政治は持ち込まない。使えれば使う、程度だ。
SQLiteだとGitの再開発が必要になるのが無駄だ。SVNの方が良ければ乗り換えるかもだが。
(というかバケツ的使用感をSVNが提供してたらそれで終わり、俺がアプリ作るまでもない。
これって今無いのか?
逆にSVNもGitと同様政治的で、バケツなんて提供してヤラネ、学習して使え!
なら俺がバケツアプリSVN版も売れそうなら作るかもだが)
198デフォルトの名無しさん (ワッチョイ 2514-H0Ic)
2022/11/13(日) 20:29:12.47ID:53QTWROr0■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【中国外務省】日中関係悪化は高市氏に責任と名指しで非難… [BFU★]
- 【中国外務省】日中関係悪化は高市氏に責任と名指しで非難… ★2 [BFU★]
- 外務省局長は無言で厳しい表情…日中の高官協議終了か 高市首相“台湾”発言で中国が強硬対応 発言撤回求めたか…★2 [BFU★]
- 小野田紀美・経済安保担当相「何か気に入らないことがあればすぐに経済的威圧をする国への依存はリスク」 [Hitzeschleier★]
- 政府、株式の配当など金融所得を高齢者の医療保険料や窓口負担に反映する方針を固めた [バイト歴50年★]
- 【維新】吉村知事「中国人観光客だけに頼るビジネスモデル変えていかないといけない」「高市総理の発言は撤回する必要はない」 [Hitzeschleier★]
- 中国高官と話す外務省局長の表情、やばい ★2 [175344491]
- 中国高官と話す外務省局長の表情、やばい [175344491]
- 港区、中国に宣戦布告 中国外務省をおちょくる掲示物を展示 [175344491]
- 【ほんこん悲報】吉本新喜劇の中国公演が中止に! [523957489]
- 中国外務省「日中関係の悪化は高市早苗首相が原因」と名指しで強く非難。キタ━(゚∀゚)━! [153490809]
- 小野田経済安保相「すぐに経済的威圧するところへの依存はリスク」😲 [861717324]
