2013-07-26 25 views
11

Bất cứ khi nào tôi chia thư mục con thành chi nhánh qua git subtree split hoặc (do đó?) Khi tôi đẩy luồng phụ lên, các thư cam kết trong nhánh mới/cam kết ngược dòng có "-n" và một dòng mới được thêm vào chúng.git subtree đẩy và chia nhỏ thêm "-n <newline>" để cam kết thông báo

Đó là đơn giản nhất để chứng minh với 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 

Từ đó, tôi nhận được:

$ 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 

Như bạn có thể thấy, "splitme-only" nhánh có "-n" được thêm vào thông điệp cam kết. Điều này đặc biệt xấu vì github sụp đổ mọi thứ trừ dòng đầu tiên theo mặc định. Do đó, bạn không thể dễ dàng lướt qua các thư cam kết này trên github.

Tôi đã thử sử dụng --annotate để có thể nhận được nội dung nào đó dễ đọc hơn, nhưng điều đó chỉ gắn thêm thứ gì đó vào dòng "-n".

Hành vi giống hệt với subtree push.

Có cách nào để ngăn không cho dòng "-n" được thêm vào không? Tôi có thể rebase dòng ra, nhưng khi tôi chơi xung quanh với nó nó đã phá vỡ subtrees sáp nhập. Tôi có làm điều gì sai?

Sử dụng git 1.8.3.4 trên OS X 10.8.4.

Trả lời

Các vấn đề liên quan