(gitを使用して)作成しているdiffファイルにもう少し注意を払い始めましたが、この状況で作成されるdiffの明確さに不満があります。
私はから始めます:
sub main {
my $self = shift;
return $self;
}
次に、2番目の関数を追加し、最初の関数を呼び出して次の関数を取得します。
sub main {
my $self = shift;
$self -> process ( 'hello world!' );
return $self;
}
sub process {
my $self = shift;
print @_, "\n";
return $self;
}
そのために取得するdiff出力は次のとおりです。
@@ -1,5 +1,15 @@
sub main {
my $self = shift;
+ $self -> process ( 'hello world!' );
+
+ return $self;
+}
+
+sub process {
+ my $self = shift;
+
+ print @_, "\n";
+
return $self;
}
これは私には非常に乱雑で不明瞭に思えます。追加のチャンクにより、実際にはほとんど行を追加した後、「main」関数に多くの行を追加しているように見えます。たとえば、diffが次のようになることを期待/希望します。
@@ -1,5 +1,15 @@
sub main {
my $self = shift;
+ $self -> process ( 'hello world!' );
+
return $self;
}
+
+sub process {
+ my $self = shift;
+
+ print @_, "\n";
+
+ return $self;
+}
なぜdiffがこの出力を作成しているのか(「a-> b」からの最も簡単な方法)は理解していますが、もっと明確にできるかどうかを知りたいと思います。これは可能ですか?または、diffを手動で編集することを検討していますか、それとも新しい関数の追加とそれへの呼び出しを2つの別々のパッチ/コミットに分割することを検討していますか?[1]
--no-minimal、-patience、-histogramアルゴリズムを使用してみましたが、diffの結果は同じです。'git add -p'を使用してdiffを手動で編集しても違いはありませんが、それでも最初の「不明確な」diffとしてステージングされます。
[1]副次的な質問として、この分離は、とにかくコミット的に行うことになっていることですか?