解決 .gitignore無效,不能過濾某些檔案
剛開始新建一個專案可能會把.idea/workspace.xml等這種系統檔案或編譯中間過程的檔案都用git add新增到了git版本庫中來管理,這樣即使後來添加了.gitignore檔案也不能忽略掉已經新增到版本庫中的檔案,這時需要用 git rm --cache xxx檔案 再在.gitignore中新增該檔案從而實現了對該檔案的忽略。。。(.gitignore 與 .git新增到同一級目錄即可)
gen 和bin 資料夾下的檔案是編譯生成的,最好不要加到版本管理中,最好加入到.gitignore檔案中(這兩個資料夾要留,只是把資料夾下的檔案移除版本管理庫)
一般來說,使用“git rm”命令
// 下面就以刪除bin資料夾為例子,刪除gen等檔案,也是一樣的道理,以此類推
1.剛開始 使用的是 git rm -r -n */gengen”)
引數解釋:-r 遞迴移除目錄,(Allow recursive removal when aleading directory name is given.)
-n:加上這個引數,執行命令時,是不會刪除任何檔案,而是展示此命令要刪除的檔案列表預覽,所以一般用這個引數先看看要刪除哪些檔案,防止誤刪,確認之後,就去掉此引數,真正的刪除檔案。 (Don't actually remove any file(s). Instead, just show if theyexist in the index and would otherwise be
removed by the command.)
但是上面的命令真正會刪除檔案,我覺得,我需要的只是從版本管理庫中刪除,不再跟蹤此檔案,而硬碟上的這個檔案還是要的,所以,上面的命令還要增加引數來實現此目的。
引用:
\******************開始***************\
我們想把檔案從 Git倉庫中刪除(亦即從暫存區域移除),但仍然希 望保留在當前工作目錄中。換句話說,僅是從跟蹤清單中刪除。比如一些大型日誌檔案或者 一堆.a 編譯檔案,不小心納入倉庫後,要移除跟蹤但不刪除檔案,以便稍後在 .gitignore 檔案中補上,用 --cached選項即可:\******************結束***************\
2.按照上面的引用,我修改的命令如下:
git rm -r -n--cached */bin
git rm *~ (只刪除當前目錄下以“~”結尾的檔案)
git rm \*~ (會遞迴的刪除當前目錄 以及 子目錄下的以“~”結尾的檔案)
會遞迴刪除當前目錄及其子目錄中所有 ~ 結尾的檔案。
所以我最後的命令是
gitrm -r -n--cached */bin
3.刪除gen資料夾 只要把上面的“bin”改為“gen”即可
4.把這倆資料夾移除版本管理,但是 又有問題了,就是
在你執行 “git status”檢視當前狀態,會發現 gen和bin資料夾下的檔案會出現,提示沒有在版本管理裡面
這就很煩人,我們既想把gen和bin移除版本管理庫,
但是這樣的提示,會耽誤我們的“git add”命令,也會干擾我們使用“git status”的結果列表
我們想忽略這倆資料夾,
我參考了下面的連線
http://stackoverflow.com/questions/3325736/eclipse-android-and-gitignore
我們可以在與 “.git”資料夾同級目錄下建立“.gitignore”檔案,就是這倆檔案在同一個目錄下
“.gitignore”檔案裡面的內容就是 我們要忽略的檔案,這些檔案即使不在版本管理庫,也不會提示的
檔案內容如下:
# built application files
*.apk
*.ap_
# files for the dex VM
*.dex
# Java class files
*.class
# generated files
bin/
gen/
# Local configuration file (sdk path, etc)
local.properties
# Eclipse project files
#.classpath
#.project
# Proguard folder generated by Eclipse
proguard/
# Intellij project files
*.iml
*.ipr
*.iws
.idea/
上面這些檔案就被忽略。
原文是刪除了“.classpath”和“.project”,我不建議這樣做,這兩個檔案還是留在版本管理庫,否則,你把專案匯出到別的地方,再匯入時就會有問題。
記得
參考如下:
\******************開始***************\
一般我們總會有些檔案無需納入 Git 的管理,也不希望它們總出現在未跟蹤檔案列表。通常都是些自動生成的檔案,像是日誌或者編譯過程中建立的等等。我們可以建立一個名為 .gitignore的檔案,列出要忽略的檔案模式,來看一個簡單的例子:
$ cat .gitignore *.[oa]
*~
第一行告訴 Git 忽略所有以 .o 或 .a 結尾的檔案。一般這類物件檔案和存檔檔案都是編譯過程中出現的,我們用不著跟蹤它們的版本。第二行告訴 Git 忽略所有以波浪符(~) 結尾的檔案,許多文字編輯軟體(比如Emacs)都用這樣的檔名儲存副本。此外,你可能 還需要忽略 log,tmp 或者 pid目錄,以及自動生成的文件等等。要養成一開始就設定好 .gitignore 檔案的習慣,以免將來誤提交這類無用的檔案。
檔案 .gitignore 的格式規範如下:
• 所有空行或者以註釋符號 # 開頭的行都會被 Git 忽略。
• 可以使用標準的 glob 模式匹配。
• 匹配模式最後跟反斜槓(/)說明要忽略的是目錄。
• 要忽略指定模式以外的檔案或目錄,可以在模式前加上驚歎號(!)取反。
所謂的 glob 模式是指 shell 所使用的簡化了的正則表示式。星號(*)匹配零個或多個任 意字元;[abc]匹配任何一個列在方括號中的字元(這個例子要麼匹配一個 a,要麼匹配一 個 b,要麼匹配一個c);問號(?)只匹配一個任意字元;如果在方括號中使用短劃線分 隔兩個字元,表示所有在這兩個字元範圍內的都可以匹配(比如 [0-9]表示匹配所有 0 到 9 的數字)。
我們再看一個 .gitignore 檔案的例子:
# 此為註釋 – 將被 Git 忽略
*.a # 忽略所有 .a 結尾的檔案
!lib.a # 但 lib.a 除外
/TODO # 僅僅忽略專案根目錄下的 TODO 檔案,不包括 subdir/TODO build/ # 忽略 build/目錄下的所有檔案
doc
\******************結束***************\
如果做完上面的設定後,出現編譯錯誤,課按照下面的方法解決With regards to the error, I wouldclean the project and/or try to run the Fix ProjectProperties utility (right-click on the Project-> Android Tools -> Fix ProjectProperties).
這裡推薦一個學習git 的入門帖子:寫的還不錯
http://www.nshen.net/sitelog/2011/08/03/git-note.html
相關推薦
解決 .gitignore無效,不能過濾某些檔案
剛開始新建一個專案可能會把.idea/workspace.xml等這種系統檔案或編譯中間過程的檔案都用git add新增到了git版本庫中來管理,這樣即使後來添加了.gitignore檔案也不能忽
.gitignore無效,不能過濾某些檔案
利用.gitignore過濾檔案,如編譯過程中的中間檔案,等等,這些檔案不需要被追蹤管理。 現象: 在.gitignore新增file1檔案,以過濾該檔案,但是通過git status檢視仍顯示file1檔案的狀態。 原因: 在git庫中已存在了這個檔案,之前push提交過
Shell中過濾某些檔案不刪的小tips
有時候某一目錄下,需要保留某些檔案或目錄不刪,其餘的都刪除,可以使用下面的語句 [[email protected] ~]# touch file{1..10} [[email protected] ~]# mkdir -p D1/D2/D3 [[email p
如何解決 Mongodb後在cmd下無法啟動,提示:服務名無效,發生系統錯誤2 系統找不到指定的檔案
1.電腦是64位,作業系統win0 2.下載的是mongodb3.4版本 3.安裝包直接安裝, 預設安裝在c:\program files\mongoDB, 手工建立目錄c:\program files\mongodb\service\3.4\data\db 4.安裝完成,新增路
iOS工程配置git忽略檔案(.gitignore) .gitignore無效解決辦法
開啟終端cd到本地倉庫,和.git同層(檢視隱藏檔案) $ cd project $ ls -a 複製程式碼 建立.gitignore檔案 $ vim .gitignore 複製程式碼 鍵入 "i",看到下面這個,進入編輯模式 -- INSERT -- 複製程式碼 把
phpexcel匯出excel無法開啟,提示檔案格式或檔名無效,檔案損毀,解決辦法
使用過很多次phpexcel了,有時需要儲存檔案到磁碟,有時需要瀏覽器彈出下載。儲存到磁碟一半不會出現問題,關鍵是瀏覽器彈出儲存,經常會發生匯出的excel檔案無法開啟,提示檔案格式或檔名無效,檔案損毀。在此,記錄一下解決辦法。 1、xls還是xlsx?首先確定匯出的excel副檔名 2、新
kindeditor官網異步加載示例無效,解決無法通過方法初始化編輯器
har cdd kxml yep adf tr1 ket 沒有效果 iba 官網示例:http://kindeditor.net/ke4/examples/dynamic-load.html 項目中發現一個問題,kindeditor官網是通過 初始化編輯器,但是現在有
IntelliJ IDEA 的 .idea 目錄加入.gitignore無效的解決方法
question inf reat tac ear tell log demo dea [轉載] 無效的原因是:對應的目錄或者文件已經被git跟蹤,此時再加入.gitignore後就無效了, 解決辦法: 先執行 [文件夾] git rm -r --cached
解決-Django使用filter過濾時間,無法獲取月份的問題
日期查詢 處理 技術 family django res mona [] 時報 django中的filter日期查詢屬性有:year、month、day、week_day、hour、minute、second 但是但我在使用過濾查詢是卻總是無法過濾出月份,各種查資料,最後才
C# .net 填充無效,無法被移除 微信小程序解密失敗的解決辦法
odi 獲取用戶信息 親測 字符串 nload form 由於 無效 ted 微信小程序獲取用戶信息諸如unionId的時候需要解密,如果遇到偶然的解密失敗(填充無效,無法被移除),原因很有可能是session_key錯誤, 也是就你用作解密的session_key並不是微
[ADB]解決adb push,只讀檔案系統Read-only file system問題
解決方法 因命令2、adb disable-verity,需要新版adb工具才有,可以從以下連結下載使用 paltform adb 執行命令如下: adb root 獲取root許可權 adb disable-verity 關閉 system 分割槽的 verit
建立的maven專案,pom.xml檔案報錯解決方法
eclipse建立的maven專案,pom.xml檔案報錯解決方法 【錯誤原因一:】maven 編譯級別過低 【解決辦法:】 使用 maven-compiler-plugin 將 maven 編譯級別改為 jdk1.6 以上: <!-- java編譯外掛
執行緒間操作無效: 從不是建立控制元件“XXX”的執行緒訪問它 [Winform]執行緒間操作無效,從不是建立控制元件的執行緒訪問它的幾個解決方案,async和await?
方法1 Invoke((MethodInvoker)(()=>{XXX.Text = message;})); 方法2 取消跨執行緒檢查 Control.CheckForIllegalCrossThreadCalls = false;
解決IIS中無法執行aspx檔案,提示:伺服器應用程式不可用
引起這個的原因大概是現安裝了.Net Framework後裝的IIS導致.Net沒有在IIS裡註冊。 從.net命令列工具裡執行 aspnet_regIIS /i 就可以了(或者在類似下面的目錄:C:/WINDOWS/Microsoft.NET/Framework/v1.1.4322/asp
git忽略某些檔案(.gitignore的配置語法)
很多時候我們不希望某一類檔案被git自動新增,也不希望這類檔案出現在git的未跟蹤列表中。尤其是在git status命令中輸出一大堆無關的檔案。git支援我們自定義忽略某些檔案的,git status也會變的跟清爽 我們需要在專案中與.git資料夾的同級目錄下建立一個.gitignore檔案(注
ubuntu 掛載硬碟時,只能讀取檔案,不能寫入的解決辦法
最近用自己的硬碟當做儲存工具,突然發生了問題,就是隻能看硬盤裡的資料卻無法修改或者複製內容,查了好多辦法都不行,最後看到我掛載硬碟時,硬碟資料夾出現×號,這才想起來可能由於許可權問題,被設定為只讀模式,所以解決辦法自然就是給許可權啊: 1 pwd檢視硬碟的
VScode編譯C++,標頭檔案顯示not found的解決方法
一直用codeblocks,想試試vscode,結果這個問題給我弄懵逼了。一開始以為是iostream這個標頭檔案not found,後來發現第一個標頭檔案都會這樣顯示,放到後面就不會了,然而,光這一個顯示not found(雖然並不影響編譯),就能逼死強迫症的啊~~~ 言歸正傳,這個問題解
Java基礎——解決JFrame.setBackground設定無效,mac系統IDEA編譯器
原理: JFrame框架,一旦建立,在其中就已經包含一個內容面板。 一般我們在往JFrame中新增元件時,都加在了內容面板中,這個面板可以通過JFrame的成員方法getContentPane()取出來,所以如果設定JFrame的背景顏色,仍然會被內容面板蓋住,不如設定內容面板的背景顏色,如
【人生苦短,我用python!】幾行python處理檔案裡面的重複內容(包括了讀寫檔案,過濾重複!)
The beauty of python 1 https://blog.csdn.net/dengyaolongacmblog/article/details/38016905 置頂 2014年07月21日 15:28:18 yaolongdeng 閱讀數:2189 標籤:
UBUNTU安裝CUDA 9.2,提示缺少檔案的解決辦法
驅動要先安裝好,396。參考之前的安裝文章。 先安裝一些檔案,否則會提示缺少檔案。 sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-