原文地址傳送門(mén):http://t.hengwei.me/post/gitignore%E6%96%87%E4%BB%B6%E4%B8%8D%E8%B5%B7%E4%BD%9C%E7%94%A8.html
當(dāng)我們用git時(shí)常常會(huì)習(xí)慣把我們不想上傳到遠(yuǎn)程代碼庫(kù)中的一些本地文件(夾)放在一個(gè)叫做.gitignore的文件中杭抠,例如常見(jiàn)的本地build文件夾枷恕,一些IDE如Intellig,Eclipse的項(xiàng)目管理文件,但有些時(shí)候我們會(huì)遇到這樣的問(wèn)題:放入gitignore文件夾中的文件卻還是被git index, 當(dāng)你通過(guò)git status
顯示文件狀態(tài)時(shí)美尸,他們并沒(méi)有被忽略扇调。
問(wèn)題場(chǎng)景
當(dāng)你在git庫(kù)中編寫(xiě)某些代碼文件蹦掐,并已經(jīng)stage該文件之后丐怯,你發(fā)現(xiàn)某個(gè)文件你不想用了,想在以后的改變中忽略它蚀同。然后你再你的.gitignore文件中加入該文件名缅刽,結(jié)果它并沒(méi)有被忽略。
當(dāng)你從遠(yuǎn)程代碼庫(kù)中g(shù)it clone
一份代碼中本地并做些修改蠢络,build衰猛,然后通過(guò)git add .**等stage了這些改變,當(dāng)你通過(guò)git status
查看狀態(tài)時(shí)發(fā)現(xiàn)不小心把build/文件夾給add進(jìn)來(lái)了刹孔。于是你在.gitignore文件中加入了build/啡省,但發(fā)現(xiàn)并不起作用。
根本原因
commit你已有的改變,保存當(dāng)前的工作纵潦。
git rm --cached file/path/to/be/ignored徐鹤。
git add .
git commit -m "fixed untracked files"
引用
****[1].** gitignore-not-working[2]. ignoring file