2012-11-30 16 views
27

git commitを実行すると、次の出力につながる:コミットメッセージでgitが 'rewrite'または 'rename'と言うとどういう意味ですか?

[[email protected]] git: git commit -a -m "StreamIt instrumentation" 
[master 263410f] StreamIt instrumentation 
62 files changed, 6117 insertions(+), 5748 deletions(-) 
rewrite Code/ALCHEMY/streamit-src-2.1.1/src/at/dms/kjc/cluster/ClusterBackend.java (91%) 
rewrite Code/ALCHEMY/streamit-src-2.1.1/src/at/dms/kjc/cluster/ClusterCodeGenerator.java (95%) 
rewrite Code/ALCHEMY/streamit-src-2.1.1/src/at/dms/kjc/cluster/code/FlatIRToCluster.java (94%) 
rewrite Code/ALCHEMY/streamit-src-2.1.1/src/at/dms/kjc/common/ToCCommon.java (92%) 
rewrite Code/ALCHEMY/streamit-src-2.1.1/src/at/dms/kjc/flatgraph/ScheduledStaticStreamGraph.java (93%) 
rename Code/ALCHEMY/streamit-src-2.1.1/src/at/dms/kjc/sir/lowering/fission/{StatelessDuplicate.java => HorizontalFission.java} (98%) 
rewrite Code/ALCHEMY/streamit-src-2.1.1/src/at/dms/kjc/sir/lowering/partition/dynamicprog/DynamicProgPartitioner.java (93%) 
  • それはリライト」としてファイルを報告したときにgitのはどういう意味ですか?
  • 関連するパーセンテージの意味は?
  • このコミットで変更された62のうち、これらの行にパーセンテージのみが関連付けられているのはなぜですか?
+0

私はあなたがrebaseを作ったと信じていますか? –

+0

@OleksandrKravchuk私は実際にコピーして貼り付けました:gitコミットのみ –

+0

これらのバイナリファイルはありますか?読めるようなテキストではありませんか?通常、gitがコンパイルされたファイルを比較すると、そのような出力が表示されます。 –

答えて

30

Gitはヒューリスティックを使って、変更がファイルの名前変更やコピーであったかどうか、またそれがファイルの「再書き込み」であるかどうかを判断します。大まかに言えば、旧バージョンと新バージョンの差分が新バージョンよりも大きければ、それは「書き換え」です。

これはgitの元のソースファイルを変更するために使用されます。ほとんどの場合、ローカライズされた変更が行われます。これは行単位の差分に基づいているため、ソースファイルを再インデントするようなものがトリガーできます。また、オンザフライで決定されるので、 "-b"や "-w"などのdiffオプションは、変更が書き換え(またはコピーか名前の変更)かどうかの評価を変更することができます。

パーセントはgitの「相違度インデックス」です(リネームまたはコピーのパーセンテージ「類似性インデックス」とは対照的です)。おそらく、変更されたファイルの行のパーセンテージのようなものでしょう。

+0

この説明に感謝します。私はCtrl + Shift + FをこのJavaファイルでEclipseで実行しました。つまり、自動フォーマッティングであり、結果としてファイルには多くの変更があります。 gitの出力はリライトとリネームされたファイルのみを表示しますが、私の場合は62の間の他のすべての変更はマイナーなものです。 –

+0

はい、コミット後のサマリーには、追加、削除、名前変更、コピー、または書き換えられたファイルがリストされます( 'git diff --summary HEAD^..'の出力です)。したがって、ファイルに対する「通常の」変更は、書き換えヒューリスティックを起動するのに十分ではありません。 – araqnid

関連する問題