2

Git には、ファイル内の部分的な変更のみをステージング (および後でコミット) するための優れたツールがあります。私は一種の逆のオプションを探しています:gitにファイル全体を1つのハンクにステージングしてコミットさせる:

このオプションは、ファイルが大幅に変更され、あちこちの空白がバージョン間で共通している場合に実用的です。私が理解している限り、git は常にファイルをハンクのままステージングしようとし、共通 (空白行) を分割ポイントとして使用します。

4

1 に答える 1

0

git完全なファイルのみを保存します(少なくともフロントエンドの観点から-バックエンドオブジェクトデータベースは、パックファイルを作成するときにストレージ効率のためにデルタを使用していくつかのトリックを実行しますが、オブジェクトデータベースとの間のトランザクションはファイル全体でのみ行われますユニット)。git add -p「部分的な変更」を「保存」する場合、git実際に行っているのは、指定した変更のみを含むまったく新しいファイルを生成し、そのファイル全体を保存することです。ワークフローによっては、これは について批判さgitれることがあります。実際には、開発プロセスに実際には存在せず、コンパイルおよび/または正しく動作することを確認するためのテストが行​​われていないファイルを保存できるからです。

于 2012-12-04T15:43:37.170 に答える