當前位置:首頁 » 文件管理 » git排除文件夾

git排除文件夾

發布時間: 2023-01-24 05:20:21

A. 小程序svn文件夾和git文件夾可以刪除嗎

使用svn進行版本控制,每個文件夾下都有.svn文件夾,有些項目在脫離svn版本控制之後,想刪除項目中所有的.svn文件夾,可用下面的方法進行快速刪除: 建立一個文本文件,取名為kill-svn-folders.reg(擴展名由txt改為reg),文件的內容如下: Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN] @="Delete SVN Folders" [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN\command] @="cmd.exe /c \"TITLE Removing SVN Folders in %1 && COLOR 9A && FOR /r \"%1\" %%f IN (.svn) DO RD /s /q \"%%f\" \"" find . -type d -name ".svn"|xargs rm -rf 保存之後,雙擊這個reg文件。成功後,在每一個文件夾上點擊右鍵都會有一個「Delete SVN Folders」的選項,點擊之後,既可以刪除這個文件下(包括子文件夾)所有的.svn文件夾。 刪除完成後,為了避免誤操作,不小心把正處於版本管理中的.svn文件夾刪除,最好把剛才的注冊信息刪除。刪除方法是,打開注冊表(在運行中用regedit命令),找到[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN] ,把DeleteSVN這個項刪除,即可。 eclipse編譯去除svn文件夾 "Project-Properties-Java Build Path",右側的面板中的"Source"選項卡,在Excluded中加入"**/.svn/**",就可以將所有的svn文件排除在編譯路徑中了。

B. git怎麼過濾當前文件夾下的dist目錄

it怎麼過濾當前文件夾下的dist目錄
我在gitignore中寫dist/,它會過濾當前目錄下的dist,但是在/src/assets/js/xxx/dist目錄也會被過濾,表現就是改變這個目錄/src/assets/js/xxx/dist下的內容,在change files里沒有顯示,求git大神解釋下...
gitignore文件如下:

node_moles/
bower_components/
coverage/
.sass-cache/
.idea/

C. 如何創建.gitignore文件,忽略git不必要提交的文件

在Git的使用過程中,有很多文件是不需要被提交到版本管理的,比如mac的朋友都知道.DS_Store 文件在每個文件夾中都會出現,但是這個文件對代碼同步來說並沒有什麼作用,所以我們需要把這個文件排除在b岸本管理之外,這個時候就需要我們問答的 gitignore文件來搞定了。
首先聲明我的使用環境為mac,所以windows使用起來有更簡單的方法,或者有些命令windows不能使用
默認情況之下gitignore文件是不存在的,我們需要把這個文件新建一下,在終端中你首先cd到你的工程目錄下,然後輸入命令
touch .gitignore 1

這樣你就可以在文件中新增一個.gitignore隱藏文件。
可以使用
ls -all 或者linux下使用 ll1

進行查看,之後對文件進行編輯
vi .gitignore 1

在vi中使用 i 命令對文件進行編輯,然後點擊esc 使用 :wq命令進行保存
1、配置語法:
以斜杠「/」開頭表示目錄;
以星號「*」通配多個字元;
以問號「?」通配單個字元
以方括弧「[]」包含單個字元的匹配列表;
以嘆號「!」表示不忽略(跟蹤)匹配到的文件或目錄;
此外,git 對於 .ignore 配置文件是按行從上到下進行規則匹配的,意味著如果前面的規則匹配的范圍更大,則後面的規則將不會生效;
2、示例:
(1)規則:fd1/*
說明:忽略目錄 fd1 下的全部內容;注意,不管是根目錄下的 /fd1/ 目錄,還是某個子目錄 /child/fd1/ 目錄,都會被忽略;
(2)規則:/fd1/*
說明:忽略根目錄下的 /fd1/ 目錄的全部內容;
(3)規則:
/*
!.gitignore
!/fw/bin/
!/fw/sf/

說明:忽略全部內容,但是不忽略 .gitignore 文件、根目錄下的 /fw/bin/ 和 /fw/sf/ 目錄;
例如我配置的是
launchConfigurations/
.DS_Store
test.txt123

之後提交到遠端就可以了
但是如果你需要忽略的文件意境存在在遠端中了,那麼你需要將遠端中的文件刪除掉才可以:
使用git rm --cached .DS_Store進行刪除
git rm –cached 把文件.DS_Store從git的索引庫中移除,但是對文件.DS_Store本身並不進行任何操作也就是說本地還是有.DS_Store文件的,但是遠端卻沒有了
之後再使用git commit /push 之後提交上去
這樣就不會再用擔心這個文件的沖突了

D. git 如何忽略項目中的子文件夾

在使用git tracking 項目文件的變化時,如果項目中包含大的數據文件變化,會佔用大量的空間用於記錄歷史,對於不需要tracking的文件,可以通過以下方法去除git tracking,以節省磁碟空間。

step1: 在git tracking目錄下,簡歷文件,文件名為" .gitignore "。對於windows系統,系統禁止建立該文件名為「 .gitignore 」的文件,可以新建一個文件,重命名為" .gitignore. "

step2: 在文件中添加不需要跟蹤的文件夾,並以'/' 結尾,如:

'excludedFOlder/'

reference:  https://www.atlassian.com/git/tutorials/saving-changes/gitignore

注意,gitignor文件的編輯請使用windows自帶notepad,如果某些時候gitignor不工作,使用下面語句清空cache:

git rm -r --cached .
git add .
git commit -m "fixed untracked files"

E. git clone 時可以忽略某個文件夾么

如果需要這樣做,建議先全部pull下來,再把需要忽略的文件checkout到原來狀態即可

F. git 配置忽略文件規則

工作區新建一個名稱為.gitignore的文件。

然後,把要忽略的文件名填進去,Git就會自動忽略這些文件。

有時對於git項目下的某些文件,我們不需要納入版本控制,比如日誌文件或者IDE的配置文件,此時可以在項目的根目錄下建立一個隱藏文件 .gitignore(linux下以.開頭的文件都是隱藏文件),然後在.gitignore中寫入需要忽略的文件。

.gitignore注釋用'#', *表示匹配0個或多個任意字元

.gitignore忽略規則的優先順序

在 .gitingore 文件中,每一行指定一個忽略規則,Git檢查忽略規則的時候有多個來源,它的優先順序:

1)從命令行中讀取可用的忽略規則

2)當前目錄定義的規則

3)父級目錄定義的規則,依次遞推

4)$GIT_DIR/info/exclude 文件中定義的規則

5)core.excludesfile中定義的全局規則

.gitignore忽略規則的匹配語法

在 .gitignore 文件中,每一行的忽略規則的語法如下:

1) 空格 不匹配任意文件,可作為分隔符,可用反斜杠轉義

2)以「 # 」開頭的行都會被 Git 忽略。即#開頭的文件標識注釋,可以使用反斜杠進行轉義。

3)可以使用標準的 glob 模式匹配。所謂的glob模式是指shell所使用的簡化了的正則表達式。

4)以斜杠" / "開頭表示目錄;"/"結束的模式只匹配文件夾以及在該文件夾路徑下的內容,但是不匹配該文件;"/"開始的模式匹配項目跟目錄;如果一個模式不包含斜杠,則它匹配相對於當前 .gitignore 文件路徑的內容,如果該模式不在 .gitignore 文件中,則相對於項目根目錄。

5)以星號" * "通配多個字元,即匹配多個任意字元;使用兩個星號" ** " 表示匹配任意中間目錄,比如`a/**/z`可以匹配 a/z, a/b/z 或 a/b/c/z等。

6)以問號" ? "通配單個字元,即匹配一個任意字元;

7)以方括弧" [] "包含單個字元的匹配列表,即匹配任何一個列在方括弧中的字元。比如[abc]表示要麼匹配一個a,要麼匹配一個b,要麼匹配一個c;如果在方括弧中使用短劃線分隔兩個字元,表示所有在這兩個字元范圍內的都可以匹配。比如[0-9]表示匹配所有0到9的數字,[a-z]表示匹配任意的小寫字母)。

8)以嘆號" ! "表示不忽略(跟蹤)匹配到的文件或目錄,即要忽略指定模式以外的文件或目錄,可以在模式前加上驚嘆號(!)取反。需要特別注意的是: 如果文件的父目錄已經被前面的規則排除掉了,那麼對這個文件用"!"規則是不起作用的 。也就是說"!"開頭的模式表示否定,該文件將會再次被包含,如果排除了該文件的父級目錄,則使用"!"也不會再次被包含。可以使用反斜杠進行轉義。

.gitignore忽略規則簡單說明

#               表示此為注釋,將被Git忽略

*.a             表示忽略所有 .a 結尾的文件

!lib.a          表示但lib.a除外

/TODO 表示僅僅忽略項目根目錄下的 TODO 文件,不包括 subdir/TODO

build/          表示忽略 build/目錄下的所有文件,過濾整個build文件夾;

doc/*.txt       表示會忽略doc/notes.txt但不包括 doc/server/arch.txt

bin/:           表示忽略當前路徑下的bin文件夾,該文件夾下的所有內容都會被忽略,不忽略 bin 文件

/bin:           表示忽略根目錄下的bin文件

/*.c:           表示忽略cat.c,不忽略 build/cat.c

debug/*.obj:    表示忽略debug/io.obj,不忽略 debug/common/io.obj和tools/debug/io.obj

**/foo:         表示忽略/foo,a/foo,a/b/foo等

a/**/b:         表示忽略a/b, a/x/b,a/x/y/b等

!/bin/run.sh    表示不忽略bin目錄下的run.sh文件

*.log:          表示忽略所有 .log 文件

config.php:     表示忽略當前路徑的 config.php 文件

/mtk/ 表示過濾整個文件夾

*.zip           表示過濾所有.zip文件

/mtk/do.c       表示過濾某個具體文件

被過濾掉的文件就不會出現在git倉庫中(gitlab或github)了,當然本地庫中還有,只是push的時候不會上傳

需要注意的是,gitignore還可以指定要將哪些文件添加到版本管理中,如下:

!*.zip

!/mtk/one.txt

唯一的區別就是規則開頭多了一個感嘆號,Git會將滿足這類規則的文件添加到版本管理中。為什麼要有兩種規則呢?

想像一個場景:假如我們只需要管理/mtk/目錄中的one.txt文件,這個目錄中的其他文件都不需要管理,那麼.gitignore規則應寫為::

/mtk/*

!/mtk/one.txt

假設我們只有過濾規則,而沒有添加規則,那麼我們就需要把/mtk/目錄下除了one.txt以外的所有文件都寫出來!

注意上面的/mtk/*不能寫為/mtk/,否則父目錄被前面的規則排除掉了,one.txt文件雖然加了!過濾規則,也不會生效!

還有一些規則如下:

fd1/*

說明:忽略目錄 fd1 下的全部內容;注意,不管是根目錄下的 /fd1/ 目錄,還是某個子目錄 /child/fd1/ 目錄,都會被忽略;

/fd1/*

說明:忽略根目錄下的 /fd1/ 目錄的全部內容;

/*

!.gitignore

!/fw/

/fw/*

!/fw/bin/

!/fw/sf/

說明:忽略全部內容,但是不忽略 .gitignore 文件、根目錄下的 /fw/bin/ 和 /fw/sf/ 目錄;注意要先對bin/的父目錄使用!規則,使其不被排除。

溫馨提示:

如果你不慎在創建.gitignore文件之前就push了項目,那麼即使你在.gitignore文件中寫入新的過濾規則,這些規則也不會起作用,Git仍然會對所有文件進行版本管理。簡單來說出現這種問題的原因就是Git已經開始管理這些文件了,所以你無法再通過過濾規則過濾它們。所以大家一定要養成在項目開始就創建.gitignore文件的習慣,否則一單push,處理起來會非常麻煩。

ZT- 散盡浮華

G. 如何創建.gitignore文件,忽略git不必要提交的文件

1. 在需要創建 .gitignore 文件的文件夾, 右鍵選擇 Git Bash 進入命令行,進入項目所在目錄。 2. 輸入 touch .gitignore 在文件夾就生成了一個「.gitignore」文件。 然後在」.gitignore」 文件里輸入你要忽略的文件夾及其文件就可以了。

H. 怎樣讓Git忽略當前已經更改的文件

在你的git目錄下創建一個.gitignore文件,打開之後把要忽略的文件或者文件夾添加進去。比如我要忽略bin目錄,就加一行/bin,如果要忽略一個圖像文件,就加一行/xxx.jgp

熱點內容
java返回this 發布:2025-10-20 08:28:16 瀏覽:842
製作腳本網站 發布:2025-10-20 08:17:34 瀏覽:1105
python中的init方法 發布:2025-10-20 08:17:33 瀏覽:812
圖案密碼什麼意思 發布:2025-10-20 08:16:56 瀏覽:979
怎麼清理微信視頻緩存 發布:2025-10-20 08:12:37 瀏覽:868
c語言編譯器怎麼看執行過程 發布:2025-10-20 08:00:32 瀏覽:1218
郵箱如何填寫發信伺服器 發布:2025-10-20 07:45:27 瀏覽:440
shell腳本入門案例 發布:2025-10-20 07:44:45 瀏覽:321
怎麼上傳照片瀏覽上傳 發布:2025-10-20 07:44:03 瀏覽:996
python股票數據獲取 發布:2025-10-20 07:39:44 瀏覽:966