2016-09-14 71 views
3

嗨我有一個git文件,我不想將更改合併到它中,而是希望修改始終追加到文件的末尾,而項目的其餘部分文件正常合併。這可以在git中配置嗎?在git中爲某些文件追加更改

例如在上游的文件F有一行

1. |10-09-2016 00:12:43 : Check completed 

在我的叉子,我改變F到

1. |11-09-2016 00:10:55 : Check completed 

然後提交我的變化,並創建從我的叉子到上游的MR。

而是在upsteam文件F改爲

1. |11-09-2016 00:10:55 : Check completed 

我要上upsteam文件F的,接受MR後,成爲

1. |10-09-2016 00:12:43 : Check completed 
2. |11-09-2016 00:10:55 : Check completed 
+0

我只想改變你寫入到文件F的方式,使數據連接在一起,然後提交該更改。 –

+0

是的,這是可行的,但當你有多個人的項目時,將無法正常工作。 – user1589188

+0

這取決於如何寫入此文件。 –

回答

2

你可以嘗試定義自定義合併經理,在合併衝突的情況下將彙總這兩個版本。

在這裏你可以看到一個完整的例子:「strategy for git and append-mostly files

您還將看到替代你去嘗試,就像在.gitattributes添加:

myfile merge=union 

沒有在這種情況下,需要合併的驅動程序。

union 

潤3路文件級合併爲文本文件,而是採取從兩個版本的線條,而不是讓衝突標記。
這往往會以隨機順序在結果文件中留下添加的行,用戶應該驗證結果。如果您不瞭解其含義,請不要使用它。

(即不是「追加」雖然其他版本)

+0

謝謝。當試圖接受gitlab上的MR時,它如何應用於MR過程? – user1589188