簡體   English   中英

從git倉庫中刪除並忽略所有具有擴展名的文件

[英]Remove and ignore all files that have an extension from a git repository

我正在與其他一些開發人員一起進行django項目,最近我們意識到應用程序中的所有.pwc文件都會導致提交和存儲庫混亂。

有什么辦法可以從git存儲庫中的所有子目錄中刪除所有.pwc文件,然后在以后的提交中忽略它們?

刪除它們的方法很多:

git ls-files | grep '\.pwc$' | xargs git rm

find . -name *.pwc | xargs git rm

注意:如果您尚未提交它們,請僅使用rm ,而不是git rm

要在以后忽略它們,只需將* .pwc添加到.gitignore中。 (如果沒有該文件,請在存儲庫的頂層創建一個名為.gitignore的文件,然后僅添加一行“ * .pwc”)

您還可以使用以下內容:

git rm -r '*.pwc' 

然后使那些文件被git忽略:

echo '*.pwc' >> .gitignore

最后一個是萬一您已經有.gitignore文件,如果沒有,我們用'>'符號。

Jefromi的答案將刪除它們的現在和將來...您也可以使用git filter-branch刪除它們。 當然,這還有其他方面的影響,例如要求回購倉庫中的其他所有人重新結帳(並可能將他們尚未推送到主回購倉庫中的所有工作重新建立基礎)。 取決於PWC文件的大小,如果它們浪費了您存儲庫中的大量磁盤空間,則可能需要這樣做(因為每次克隆git存儲庫時,您都會獲得每個文件和每個修訂版)

Windows中,這對我有用:

git rm -r '*.pwc' -f

並將其保存在.gitignore中

echo '*.pwc' >> .gitignore

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM