每当我将子目录拆分为分支时 git subtree split
或者(因此?)当我向上游推送子树时,新分支/上游提交中的提交消息具有“-n”并且在它们之前添加了换行符。
用split进行演示最简单:
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-only”分支在提交消息之前添加了“-n”。 这尤其糟糕,因为github默认情况下会折叠除第一行之外的所有内容。因此,您无法在github上轻松浏览这些提交消息。
我试过用过 --annotate
或许可以获得更具可读性的东西,但这只是在“-n”行上添加了一些内容。
行为是相同的 subtree push
。
有没有办法防止添加“-n”行?我可以改变这条线,但是当我玩弄它时,它破坏了子树的合并。难道我做错了什么?
在OS X 10.8.4上使用git 1.8.3.4。