在使用git對專案進行版本管理的時候,我們總有一些不需要提交到版本庫里的檔案和資料夾,這個時候我們就需要讓git自動忽略掉一下檔案。
使用.gitignore忽略檔案
為了讓git忽略指定的檔案和資料夾,我們需要在專案的根目錄當中建立
.gitignore檔案,使用.gitignore檔案的方式很簡單,在.gitignore檔案當中,一行代表一條忽略規則,如果是乙個帶「.」這種有字尾的字串那麼git就會忽略這個檔案。「*」表示的就是選中所有,如果沒有「.」就表示乙個資料夾。下面舉個例子。
比如我的專案想忽略掉.idea這個資料夾,直接輸入:
.idea/如果想忽略掉所有的字尾為json的檔案,那麼就輸入:
*.json注意:.gitignore只能忽略那些原來沒有被track的檔案,如果某些檔案已經被納入了版本管理中,則修改.gitignore是無效的。刪除檔案的追蹤.gitignore 檔案的用途,只能作用於 untracked files,也就是那些從來沒有被 git 記錄過的檔案(自新增以後,從未 add 及 commit 過的檔案)。
對於已經提交過檔案,想要讓ignore生效, 也是有辦法的:
使用git rm --cached從 git 的資料庫中刪除對於該檔案的追蹤;
把對應的規則寫入 .gitignore,讓忽略真正生效;
提交+推送。
只有這樣做,所有的團隊成員才會保持一致而不會有後遺症,也只有這樣做,其他的團隊成員根本不需要做額外的工作來維持對乙個檔案的改變忽略。
最後有一點需要注意的,git rm --cached
刪除的是追蹤狀態,而不是物理檔案;如果你真的是徹底不想要了,你也可以直接rm -->
忽略 --> 提交+推送。
舉個例子, 比如要刪除.idea檔案下的workspace.xml
git rm --cached .idea/workspace.xml這樣就可以刪除掉workspace.xml的檔案跟蹤了, .gitignore內的忽略規則就會真正生效。
暫時忽略某個檔案的修改
開發過程中可能還會遇到這樣的情況,某個檔案沒有修改好,但是又要提交**, 想這次忽略這個檔案,下一次提交時再去提交它。
git update-index --assume-unchanged
git update-index --assume-unchanged
,這樣 git 暫時忽略你對檔案做的修改;
當你的工作告一段落決定可以提交的時候,重置該標識:git update-index --no-assume-unchanged
,於是 git 只需要做一次更新,這是完全可以接受的了;
提交並推送**到遠端庫
git忽略某些檔案提交
在專案中有些配置檔案不需要提交,但是有同學在後面開發中發現在.igonore檔案中無論如何都無法忽略某些檔案的提交。原因在這裡 已經維護起來的檔案,即使加上了gitignore,也無濟於事。那麼如何解決呢?方式如下 git update index assume unchanged 要忽略的資料夾 ...
git 提交時,如何忽略某些檔案
git 在專案庫的 gitignore 檔案裡來定義無須納入版本庫的檔案,這樣就不會出現在未跟蹤的列表中,也不會在你執行 git add 的時候被暫存但是如果你想定義乙個全域性的忽略檔案的話,這樣就不用把你經常想忽略的檔案不小心納入版本庫 所以就要配置一下全域性配置 使用 core.excludes...
git忽略某些檔案(資料夾)提交
開發過程中有些快取檔案不想提交,但是git已經維護專案了,這時候使用.gitignore檔案忽略也是沒有意義的,並不會起作用,可以使用如下方法忽略檔案或資料夾提交 忽略單個檔案 git update index assume unchanged sessions abc.xml 忽略多個檔案 git...