該文章已同步收錄到我的博客網(wǎng)站,歡迎瀏覽我的博客網(wǎng)站,xhang’s blog
1. .gitattributes 文件的作用
.gitattributes 文件是 Git 版本控制系統(tǒng)中的一個(gè)配置文件,它用于指定 Git 如何處理文件的二進(jìn)制數(shù)據(jù),以及如何標(biāo)識(shí)文件的類(lèi)型。
具體來(lái)說(shuō),.gitattributes 文件的作用包括以下幾個(gè)方面:
- 指定二進(jìn)制文件的類(lèi)型:在.gitattributes 文件中,可以指定某些二進(jìn)制文件的類(lèi)型,例如文本文件、HTML 文件、CSS 文件等。這樣,Git 就可以根據(jù)文件的類(lèi)型來(lái)自動(dòng)處理這些文件,例如將文本文件自動(dòng)轉(zhuǎn)換為 HTML 文件。
- 設(shè)置 Git 如何處理這些文件:在.gitattributes 文件中,可以指定 Git 如何對(duì)文件進(jìn)行處理。例如,可以指定 Git 如何處理這些文件的提交、標(biāo)記、合并等操作。
- 自定義文件類(lèi)型的標(biāo)志符:在.gitattributes 文件中,可以自定義文件類(lèi)型的標(biāo)志符。這樣,當(dāng) Git 遇到這些文件時(shí),就可以根據(jù)標(biāo)志符來(lái)自動(dòng)處理這些文件,例如將這些文件自動(dòng)添加到某個(gè)分支中。
- 禁用文件的自動(dòng)處理:在.gitattributes 文件中,可以禁用某些文件的自動(dòng)處理。例如,可以禁用 HTML 文件的自動(dòng)轉(zhuǎn)換為 CSS 文件的功能,這樣,即使用戶(hù)手動(dòng)將 HTML 文件轉(zhuǎn)換為 CSS 文件,Git 也不會(huì)自動(dòng)處理這些文件。
總的來(lái)說(shuō),.gitattributes 文件是 Git 中非常重要的一個(gè)配置文件,它可以幫助用戶(hù)更好地控制 Git 如何處理文件,以及如何自動(dòng)處理文件。
2. git Merge的邏輯
首先git merge大致是這樣的邏輯:git在merge分支時(shí),有一個(gè)默認(rèn)的merge驅(qū)動(dòng),這個(gè)驅(qū)動(dòng)會(huì)去檢查每個(gè)文件的每一行,如果按照一定規(guī)則發(fā)現(xiàn)兩個(gè)分支的同一個(gè)文件有不同,那么認(rèn)為兩個(gè)分支都對(duì)這個(gè)文件做了修改,會(huì)merge兩個(gè)文件,此時(shí)有可能產(chǎn)生沖突;那么如果我們自定義一個(gè)merge驅(qū)動(dòng),在里面定義一些不會(huì)被檢查的文件,那git就會(huì)直接跳過(guò)這些文件,因此就不會(huì)merge,而我們自定義的這個(gè)merge驅(qū)動(dòng)就是 ours。
3. 自定義Merge驅(qū)動(dòng)
3.1設(shè)置全局 merge 操作的策略
在項(xiàng)目根目錄下使用以下命令設(shè)置全局merge操作的策略
git config --global merge.ours.driver true
文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-713798.html
3.2在項(xiàng)目根目錄下添加.gitattributes 文件
在項(xiàng)目根目錄下添加.gitattributes文件(與.git文件同級(jí)),在該文件中寫(xiě)入需要忽略的文件(支持通配符)
下面文件表示,在分支合并的時(shí)候忽略以下文件的merge文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-713798.html
**/resources/application.yml merge=ours
**/resources/application-dev.yml merge=ours
**/resources/application-test.yml merge=ours
到了這里,關(guān)于多分支merge忽略文件合并的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!