- Git 12©2ch.net
33 :デフォルトの名無しさん[sage]:2015/03/25(水) 12:53:22.29 ID:7vrJVraD - >>32
それ書いたやつここに連れてくるか、 お前が代わりに反論してくれ。 まずrebaseはコミット履歴を綺麗にするためであって コミット"グラフ"を綺麗にするものじゃない。 この時点でそれ書いたやつは勘違いしている。 そしてffマージ推奨みたいな感じだが、 "master"へのマージは--no-ffでやるのが常識 gitlabのウェブ管理画面からは--no-ffしか行えない。 (もちろんmasterじゃないところならffマージでも良い) さらに言えば「開発中のブランチ」と「そのブランチがffマージされた未来のmaster」が 同じ内容になるからテストが安心できるというのはまあいいんだが、 途中のコミットの話が抜けてる。同じ内容になるからという理由だけなら 途中のコミットが汚なくてもいい(レビューが困難)でもいいって話になってしまう。 rebaseの目的はレビューを容易にすること。テストが安心っていうのはおまけでしかない。
|
- Git 12©2ch.net
42 :デフォルトの名無しさん[sage]:2015/03/25(水) 19:31:03.19 ID:7vrJVraD - >>35
> ※1つのプルリクエストに複数の目的の修正が入っているなら、そのプルリクエストが間違ってる 一つのプルリクエストは、一つの機能だよ。 その機能は複数のコミットからなっている。 誰かが新しい機能のプルリクエストを出す所を考えて見ればわかるはず。 新しい機能を、プラグインみたいに簡単に追加できる場合ならいいが、 一般的には既存のコードを拡張可能なように修正して、 そこに機能追加を行う。
|
- Git 12©2ch.net
43 :デフォルトの名無しさん[sage]:2015/03/25(水) 19:33:42.33 ID:7vrJVraD - >>34
> 途中のコミットがあろうがなかろうがレビューは困難にも容易にもならないよね?(´・ω・`) なるよ。 いきなり複数のファイルにまたがる1000行の修正を送られたって 何をしたいのかわからない。 一つ一つ説明が必要。それが一つのコミットになる。
|
- Git 12©2ch.net
45 :デフォルトの名無しさん[sage]:2015/03/25(水) 20:07:29.90 ID:7vrJVraD - 説明しやすいサンプル見つけてきたぞ。
Replace highlight.js with rouge-fork rugments https://github.com/gitlabhq/gitlabhq/pull/8425/commits どうやらこれは、highlight.js を rouge-fork rugments に入れ替える プルリクエストのようだ。 これは一つのプロリクエストに三つのコミットが入っている。 1. テストの修正 2. ライブラリ入れ替え 3. 2以外の関連ライブラリバージョンアップ これは一つのコミットにまとめてはいけない。なぜなら入れ替えを行った結果 既存のコードが動かなくなるかもしれないからだ。 最初にテストの修正を行っているのは、ライブラリの入れ替えの前と後の両方で同じテストが通るようにするためだろう。 入れ替え前に問題となるテストを修正し(もちろん入れ替え前にテストは通る) 入れ替えた後でもテストが通れば壊れていないことが確認できる。 そして1, 2, 3のそれぞれがわかれているから何を行ったのかレビューしやすい。 テストの修正とライブラリの入れ替えと関連ライブラリのバージョンアップが 一つのコミットになっていれば、いきなり複数の変更をこんなに変えて大丈夫か?ってなるだろう? また逆に、この3つのコミットを分離して、一個ずつマージするという案もあるが、 それだと1のテストの修正は2の為にやるのだが、いきなり1.テストの修正という理由がわからない プルリクエストが届くことになる。なぜ1が必要な理由が不明だし、もしかしたら2を直せば 1は不要になるかもしれない。 だからこの三つのコミットは独立していたら駄目だし、一つのコミットにしてもいけない。 それぞれのコミットがレビューしやすいように、無駄なコミットもない。
|
- Git 12©2ch.net
46 :デフォルトの名無しさん[sage]:2015/03/25(水) 20:16:05.54 ID:7vrJVraD - >>44
> プルリクエスト1件を送るとき、コミットをまとめるべきと言ってたはずが、 > コミットをまとめないべき、にすりかわっている。 「綺麗に」まとめるということ。 汚いものをまとめろと言っただけで、 一つにまとめろとは言ってないない。 一つにまとめる・・・これはだめ。 まったくまとめない・・・これもだめ。 一つのプルリクエストは、1つ以上のコミットから成り立ち、 それぞれのコミットがレビューしやすいように 意味のある単位にまとめる。
|
- Git 12©2ch.net
48 :デフォルトの名無しさん[sage]:2015/03/25(水) 20:20:44.43 ID:7vrJVraD - 正確じゃなかったから訂正
一つにまとめる・・・何も考えずに何でもかんでも一つにまとめるのはだめ。綺麗にまとめた結果一個になる場合は良い。 まったくまとめない・・・だめ。ただし最初からきれいな単位にまとまっているのであればそれで良い。 重要なのは一つのプルリクエストをレビューがしやすいように、 「意味がある単位で1個以上のコミットで綺麗にまとめる」ということ。
|
- Git 12©2ch.net
49 :デフォルトの名無しさん[sage]:2015/03/25(水) 20:23:04.00 ID:7vrJVraD - >>47
反論も何も、お前は、 俺のことを「チームで開発作業をしたことはあまりない」と感じましたって 個人の感想を言ってるだけじゃんか。 えとさ、俺の言っている内容に対してレスしてくれない? 俺の言っている内容にコメントできないからって 「お前は○○だ。ばーか、ばーか。なにか言い返してみろよ」 と同等のレスをされて困るんだがね。 下らないレスはいらないから内容に対してコメントしろ。 お前が>>47で何か内容に対してコメントしたか?
|
- Git 12©2ch.net
50 :デフォルトの名無しさん[sage]:2015/03/25(水) 20:32:17.06 ID:7vrJVraD - >>44
自分が「コミットをまとめる」って言ったと思って レスしていたが、自分のレス読み返してみたが 「綺麗にする」とは書いてあるが 「まとめる」とは書いてないじゃないか? おかしいな? もしかして>>44のレスって単なる言いがかりか?
|
- Git 12©2ch.net
51 :デフォルトの名無しさん[sage]:2015/03/25(水) 20:49:15.42 ID:7vrJVraD - 今更だが俺なんかが言わなくても、有名な人の意見があったっけw
>>32の用な無名な人が書いた駄文じゃなくて有名な人の意見 http://blog.marc-andre.ca/2014/02/05/why-i-wont-squash-my-commits/ http://qiita.com/gogotanaka/items/8c55f69120965b077737 (↑の翻訳) > RubyのコミッターでもありRailsなどの多くのOSSで活躍されている > Marc-Andre Lafortune さんのブログに面白い記事があったので筆を取りました. > 各プロジェクトのコミッターらの素晴らしい仕事に対して失礼ながら、 > 私はコミットをまとめたいとは思わない. だから私にまとめろ言わないで欲しい. > 例えば5つのコミットからなるpull requestがあったとして、もし私が何もミスをしてなければ、 > この5つのコミットはそれぞれ独立しているはずで、それらをわざわざまとめるべきでないと思っている. ※↑これはゴミコミットを残せって言ってるんじゃないよ。↓ ほらゴミコミットはキレにするべきと言ってる。 > 例えばこんな感じ > > ・素晴らしいfeatureを思いつき、手をつける > ・しまったtypoしてた直さないと > ・しまったバグを直さないと > ・featureを仕上げる > > この様なcontributor達がもし、そのままのcommitをpull-requestに出して、 > それが受け入れられない(つまりマージされない)という事は当然の報いだとは思うが、 > 良い例がここ(https://github.com/sdsykes/fastimage/pull/27)にある. > これは一つのbugを修正するためのpull-requestだが私は15つのコミットに分けた. > それぞのリファクタ1つ1つはしかるべく順序で並んでおり、最後の1つだけがbugの修正それ自体なのだ. なんだw 俺が探してこなくても、ここに書いてあったじゃないかw
|
- Git 12©2ch.net
54 :デフォルトの名無しさん[sage]:2015/03/25(水) 21:21:46.19 ID:7vrJVraD - >>53
お前が読み間違っただけだろう? それに俺がお前に言いたいのは 内容に対してレスしろってことだ。 お前の人間として品性がないって話をしている。 お前の反論がないんだから、俺の意見は正しくて 残るはお前の品性の問題しかないからな。
|
- Git 12©2ch.net
55 :デフォルトの名無しさん[sage]:2015/03/25(水) 21:23:46.76 ID:7vrJVraD - しつこいようだが、勘違いしているようだからはっきり言っておくわ。
俺は、コミットを綺麗にしろ言っただけで、 一つにまとめろとか言ってないからな。 そもそもまとめるという単語すら >>33には書いてない。 勘違いしたのは、 ID:1QZDV4EM
|
- Git 12©2ch.net
58 :デフォルトの名無しさん[sage]:2015/03/25(水) 21:40:49.98 ID:7vrJVraD - >>57
人を馬鹿にしたのはお前だろう? お前が読み間違っただけなのに、反論が〜とか言った挙句 > 自分が推測するに、あなたは下請けに仕事を発注したことはあるが、 > 「チームで開発作業をしたことはあまりない」と感じられるんだが、実際どうだろうか? > まぁおそらくは、反論してくるだろうと思うが こんな事言ったよな? お前が何を考えてこんなレスをしたかあててやろうか? 1. 反論しない(俺が言い返さない)・・・やっぱりチーム開発したことないやつだったな。俺が言ったことは正しかった(優越感) 2. 反論する・・・俺が予想したとおり反論してきたか。俺が言ったことは正しかった(優越感) どうだ? あってるだろ? どちらにしろ優越感を感じられれるなw (まあそれをばらしたから優越感を味わえないだろうがw) そもそも、俺がどういうやつかなんて「お前の母ちゃん出ベソ」と同じで 証明しようがない問題だ。俺がなんと言おうが、お前が信じなければそれまでだからな。 それぐらいお前もわかっててやっただろ? 単にお前が優越感を得るためだけの意味が無いレス。 だからこんな下らないレスだと言った。 こういうレスを見たから俺は、お前は品性のないやつだと確定できて、 最後の挽回のチャンスとして、反論しろといったわけだが結局反論できなかったな。 はははw お前が>>57でレスしてくれたから、俺にこういう説明をするチャンスになったよ。ありがとなw
|
- Git 12©2ch.net
60 :デフォルトの名無しさん[sage]:2015/03/25(水) 21:49:20.02 ID:7vrJVraD - >>59
ほらなw やっぱり品性がない。 人を馬鹿にする方向にしかレスが出来ない。 お前無意識にやってるだろ? 無意識で品性がないw 最初にそんなことやらずに、内容に対してレスする方向に 変えていれば、今頃は挽回できたかもしれないのにな。 哀れ。
|
- Git 12©2ch.net
64 :デフォルトの名無しさん[sage]:2015/03/25(水) 23:32:40.35 ID:7vrJVraD - 長文書いたのは俺だし、百の方は俺のことだろw
勘違い君、かわいい(哀れ)
|