1

私はmsysgitを使用していますが、viを使用しているときに、2つ以上の改行を含むコミットメッセージを作成すると、実際にコミットされた場合、改行は1つだけになります。

私がこれを書いた場合:

my first commit

Hello out there from the first line.


Hello out there from two linefeeds below.


それは次のようにコミットされます:

my first commit

Hello out there from the first line.

Hello out there from two linefeeds below.


msys gitを使用している人はこれに気づきますか?どうすればそれが起こらないようにできますか?

gitバージョン1.7.10.msysgit.1

ありがとう

4

1 に答える 1

1

(機能pretty.cを担当している)を見ると、それがコミットメッセージの標準のようです。format_commit_item()

最初の空の行は、コミットメッセージの本文からヘッダーを分離するためのものです。
他のすべての改行は、1つの空の行にグループ化されます。これは、おそらくこれらのコミットを電子メールで送信でき、レビュー担当者は、使用および悪用された改行を確認したくないため、電子メールをスクロールするのに非常に長くなります。


OPテストは、これが以前のバージョンのmsysgitで可能であったこと確認します。

了解しました。VMでテストを行ったところ、Git-1.7.7-preview20111014.exeをインストールしてGit GUIに移動し、リポジトリを開いてコミットを送信すると、統合せずに複数のラインフィードを作成できます。
彼らがそれを取り戻してくれることを願っています、私はそれが必要です!–

ここで、Git-1.7.7-preview20111014は、コミット81143a87(2011-10-14T06:04:08-07:00)を意味します。これpretty.cは、その状態にあったことを意味します(commit f67d2e82d6)
それ以来、それ(pretty.c)は、関数に目に見える影響を与えることなく、主にコミット署名を解析するために進化してきましたformat_commit_item()


私は別のOPの発見を確認します:

最新のmsysgit(PortableGit-1.7.11-preview20120710)を使用しても、gitGUIで編集されたコミットはラインフィードを保持します。
viで編集されたコミットはしません。

d

最初のメッセージコミットでは、コメントごとに1つの改行しか保持されないことがわかります。
複数の改行を入れる(そしてコミット後も維持する)ために、gitguiでそれを修正する必要があります。

于 2012-07-31T05:53:14.827 に答える