[英]Remove .pyc files from Git remote repository
偶然地,我已將 .pyc 文件推送到主存儲庫。 現在我想刪除它們,但我不能這樣做。 有什么辦法可以直接從 Bitbucket 站點中刪除它們?
git rm *.pyc
刪除.pyc
文件。 如果這不起作用,請使用git rm -f *.pyc
git commit -a -m 'all pyc files removed'
git push
.gitignore
文件來忽略.pyc
文件不,您不能直接從 BitBucket 界面刪除它們,但您可以在本地結帳中刪除它們並find ./ -type f -name '*.pyc' -exec git rm {} \\;
(或者簡單地 git rm 每個 pyc 文件一個一個)。 然后提交/推送您的更改。
最后,為了避免再次犯同樣的錯誤,您可以在存儲庫的根目錄下創建一個文件,並將其命名為“.gitignore”,內容如下:
*.pyc
*~
*.swp
*~ 和 ~.swp 是其他經常被意外推送的通常被遺忘的文件類型。 請參閱 gitignore https://help.github.com/articles/ignoring-files上的 github 文檔(以及他們的 .gitignore 文件倉庫以獲得一些不錯的默認值)。
git rm *.pyc --cached
git commit -a -m'remove pyc from index'
git push
PS:我看到了問題的日期,但這個解決方案看起來更好,恕我直言。 也許它會幫助某人......
這對我有用,
find . -name '*.pyc' | xargs -n 1 git rm --cached
我使用了 simeg 的解決方案,但也想刪除大量錯誤添加到分支的 *.pyc 文件。 我使用 awk 遞歸地從緩存中刪除它們。
git status | awk '{if($1=="modified:" && $2!=".gitignore") ; system("git rm --cached "$2)}'
然后,我從本地刪除了文件
find . -name *.pyc -delete
要刪除所有.pyc
文件,請使用git rm -rf *.pyc
然后將*.py[co]
添加到您的.gitignore文件中。 (這將防止 .pyc 和 .pyo 文件在以后的提交中被提交)
因為在默認的 Bitbucket 中,repo 中沒有 .gitignore 文件,所以你可以這樣做:
轉到項目的 PyDev Package Explorer 並執行以下操作:
右鍵單擊+ Pydev /刪除 *.pyc *.pyo 和 *$py.class 文件
將彈出一個窗口,告訴您已刪除多少文件。
可選:將您的更改提交給團隊/服務器:
在提交窗口中,當我們刪除它們時,您不應該看到任何可添加的 .pyc。 此外,如果您之前提交過此類文件,那么您現在應該能夠提交它們的“刪除”。
===>您的本地和服務器存儲庫現在沒有 *.pyc *.pyo 和 *$py.class 文件:)
一個有趣的單線:
git status | grep pyc | sed -e 's/ new file: //g' | xargs -I {} git rm --cached {}
另一個有趣的襯墊可以刪除所有 pyc 文件。
找 。 -name '*.pyc' -exec git rm {} \\;
不要忘記按照其他答案中的步驟提交和添加 gitignore。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.