每當我通過git subtree split
或(因此?)將子目錄拆分到分支時(當我向上推子樹時),新分支/上游提交消息提交「-n」和一個換行符。git子樹推送和拆分添加「-n <newline>」來提交消息
這是最容易分裂證明:
git init repo
cd repo
mkdir splitme
touch splitme/foo
git add splitme/
git commit -m 'Add foo'
git subtree split -P splitme -b splitme-only
由此看來,我得到:
$ git log master
commit 6d5164076bd88d1dab8963d91ec013372e58a444
Author: me
Date: Fri Jul 26 12:22:27 2013 -0500
Add foo
和
$ git log splitme-only
commit 6ce8124a0b5e52d4bba198144d2f3f664d7b19e7
Author: me
Date: Fri Jul 26 12:22:27 2013 -0500
-n
Add foo
正如你所看到的, 「splitme,只有」分支在提交消息前面加上了「-n」。 這是特別糟糕的,因爲默認情況下github會崩潰所有內容,但第一行。因此,你不能輕易地在github上瀏覽這些提交消息。
我試過使用--annotate
可能會得到更可讀的東西,但只是將某些東西附加到「-n」行。
行爲與subtree push
相同。
有什麼辦法可以防止添加「-n」行嗎?我可以重新分配線路,但當我玩弄它時,它破壞了子樹合併。難道我做錯了什麼?
在OS X 10.8.4上使用git 1.8.3.4。