我試圖洗掉一個被意外添加到遠程倉庫azure的檔案。在我最近的提交中,我使用了
git rm filename
git commit "delete file"
git push origin main
這就洗掉了這個檔案,但它留下了它被洗掉的痕跡。這很奇怪,因為原來的main有這個檔案,但是是不同的版本?有什么幫助嗎?
uj5u.com熱心網友回復:
洗掉該檔案不會從過去的提交中洗掉,主分支會在其歷史中保留一個參考。
只有最近的提交才會記錄該檔案的洗掉。
像git filter-repo這樣的工具將能夠真正從所有版本庫歷史中洗掉該檔案。
uj5u.com熱心網友回復:
如果你在提交中洗掉了這個檔案,現在這個檔案(至少)有兩個提交。一個是它被添加的地方,一個是它被洗掉的地方。如果你想把這個檔案從 git 和它的歷史中完全洗掉,有幾種情況。既然你提到該檔案已經在遠程,那么在本地洗掉提交就不是一個選項。
除了VonC的回答:
更多資訊。從版本庫中洗掉敏感資料.。
git filter-repo工具[...]會重寫你的版本庫的歷史,從而改變你所改變的現有提交和任何依賴提交的 SHA。更改后的提交 SHA 可能會影響到你的倉庫中開放的拉取請求。我們建議在從你的版本庫中洗掉檔案之前,合并或關閉所有開放的拉取請求。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/308171.html
標籤:
上一篇:你只有一個錯誤的簽名的提交
下一篇:用最后一次提交的內容推送給git
