(タイトルについては分かりませんが、誰かがそれをより適切なものに編集するのを手伝ってください)どうすればdiffを生成するのを防ぐことができますか?
Gitは自動的に最小の差分を生成しますが、これは記憶には適していますが、読みやすくするために2行を使用します。
私のコーディングスタイルでは、gitが自動的に生成するdiffは、同じインデントの異なるブロックの閉じ括弧を変更しないで処理することがよくあります。例:
-if (true) {
- // Do something
+foreach (int i in array) {
+ // Do something else
}
これは、周囲に修正が加えられていると、読みにくいことがあります。
-if (true) {
- // Do something
-}
+foreach (int i in array) {
+ // Do something else
+}
基本的には「変わらない」行が(空行、閉じ括弧、そして} else {
のような他の一般的なライン)の間にありますならば、新しい行を追加し、古い行を削除します。私はそれだけで次のようになりたいと思いますそれらも削除し、それに応じて新しい行に追加してください。
は、だから私はgit add file --patch
を使用しようと手動で自分の欲望にそれを変更しましたが、エディタを閉じた後、gitが
何を達成することが可能である(そのままブレースを閉じると)、元の最小限の差分に私の変更を元に戻しI 2つの別々のコミットを作成せずにしたいですか?
はい、しかし、あなたは 'diff'のソースコードを変更する必要があります。 –
Gitはdiffを使ってファイルをまったく使用しません。パックファイル内でバイナリデルタフォーマットを使用します。緩い(アンパックされた)オブジェクトは分離されず、単にzlibで圧縮されます。 'git diff'を実行したときに表示されるものは、' git diff'によって一時的に計算され、再び破棄されます。 – torek
まあ...私は完全に間違っています。今私はgitがdiffをまったく格納していないことを知っています。私が本当に探しているのは、より良い "diffジェネレータ"です。多分、削除/追加のために別々のコミットを書く方が良いでしょう。 – RadarNyan