Git設置忽略排除和重新添加已經被忽略過文件(夾)的方法

場景描述

在使用git的時候,項目開始我們設置了一些需要忽略的文件和文件夾,比如一些工程文件和項目依賴庫,以免多個開發者本地環境不一樣和工程文件過大的問題。但後期發現那些已經被我們忽略掉的文件需要重新添加或者忽略的文件夾裏面有某個文件(夾)是需要大家一致的,需要設置一下排除,下面我們針對這兩種場景講一下解決辦法

設置忽略排除

設置忽略我們通常是在.gitignore文件中設置,比如在laravel框架中我們設置忽略整個vendor文件夾,則在.gitignore中添加如下路徑

/vendor/*

路徑中的星號表示所有,如果需要這是後續的排除,這裏的星號很重要

接下來我們設置忽略的文件夾中有一個文件夾裏面的內容不需要忽略

!/vendor/laravel/framework/src/Illuminate/Auth/

!表示排除的意思,當然如果忽略某個文件就直接指定就行了,比如

!/vendor/laravel/framework/src/Illuminate/Auth/TokenGuard.php

好,設置忽略和設置忽略排除,這裏就基本行了

重新添加已經被忽略過的文件(夾)

重新添加已經被忽略過的文件時,我們僅僅使用git add是不行的,因爲git倉庫中根本沒有那個文件,這時候我們需要加上-f參數來強制添加到倉庫中,然後在提交。比如上面設置了忽略排除的文件TokenGuard.php我們需要重新加入

git add -f /vendor/laravel/framework/src/Illuminate/Auth/TokenGuard.php

然後在commit和push就行了

忽略已經提交過的文件

這裏說點題外話,有的時候我們需要忽略掉以前提交過的文件,因爲git已經索引了該文件所以我們先要刪除掉該文件的緩存,如文件User.php已經提交過了,現在我們想忽略,這是我們先在.gitignore中設置該文件爲忽略,然後我們執行如下命令刪除緩存

git rm --cached User.php

然後我們在commit和push就好了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章