使用git diff時如何忽略某些檔案

2021-07-15 11:01:41 字數 741 閱讀 7821

設定git-diff 自定義driver

在gitattributes中設定要忽略的路徑和規則,使得對build.css和build.js做git-diff的時候有直接掉過的效果

git支援自定義diff驅動器(見其中diff.driver.command的說明),意思是說git-diff的時候可以指定乙個命令去跑,而不是跑內建的。有了這個配置支援,我們就可以設定如下nodiff的指令(在專案根路徑):

git config diff.nodiff.command /usr/bin/true
這個指令幹嘛呢?這個指令什麼都不幹,直接返回true(/usr/bin/true),這樣就有了類似跳過的效果。

關於git attributes可以直接看官方文件說明 ,我們利用這個特性在專案根目錄中,建立乙個.gitattributes檔案,並新增如下配置:

build.css diff=nodiff

build.js diff=nodiff

好了現在我們就可以連起來理解了,當我們執行git diff命令的時候,git就會讀取.gitattributes的配置,然後發現遇到build.css和build.js檔案的時候,需要執行nodiff指令,而nodiff指令被我們此前配置成了/usr/bin/true直接返回true,於是,就直接「跳過」了。

這裡檔案路徑的配置和.gitignore是一樣的,支援目錄,檔案,萬用字元之類的,可以輕鬆實現忽略一批檔案或者整個目錄。

git 提交時,如何忽略某些檔案

git 在專案庫的 gitignore 檔案裡來定義無須納入版本庫的檔案,這樣就不會出現在未跟蹤的列表中,也不會在你執行 git add 的時候被暫存但是如果你想定義乙個全域性的忽略檔案的話,這樣就不用把你經常想忽略的檔案不小心納入版本庫 所以就要配置一下全域性配置 使用 core.excludes...

git提交時如何忽略一些檔案

在使用git對軟體進行版本管理的時候我們總有一些不需要提交到版本庫里的檔案和資料夾,或者在管理乙個實際應用的開源專案的時候,不可以把帶有資料庫資訊的檔案上傳到開源平台當中,這個時候我們就需要讓git自動忽略掉一下檔案。為了讓git忽略指定的檔案和資料夾,我們需要在專案的根目錄當中建立.gitigno...

如何cp目錄時忽略指定的目錄和檔案

在備份ltedecoder程式時,需要把此目錄拷由到bak目錄下,但decoder目錄下有個大檔案,不需要備份,還有日誌問題,也不需要備份,如何實現呢?方法 cd source dir find name snapshot prune o print0 cpio pmd0 dest dir 此段的意...