2017-05-26 21 views
0

我們在我們的bitbucket存儲庫中提交了一些密碼,這違反了我們的組織安全策略,所以我使用BFG Repo Cleaner來替換所有密碼已刪除通過在本地創建鏡像然後使用BFG重寫git歷史記錄後需要垃圾回收嗎

bfg --replace-text passwords.txt my-repo.git 

它執行在他們的網站上描述的工作,密碼會被刪除!

出人意料的是,它

  • 更換密碼的文件中
  • 刪除舊的承諾
  • 然後做出一些新的提交 而不是改寫歷史的基礎上,老...提交。

所以這個問題還是可以從舊到位桶URL指向舊查看密碼提交

我的問題是我如何從bitbucket或git歷史中刪除已刪除的提交?然後將URL指向停止顯示我們打算刪除的密碼的已刪除/舊提交?

回答

0

解決的辦法是做一個「混帳推--force」將觸發到位桶的自動GC

但是GC可能會失敗,到位桶正在改善,如果出現這種情況,你必須運行在回購的命令手動爲管理

git reflog expire --expire="1 hour" --all 
git reflog expire --expire-unreachable="1 hour" --all 
git prune --expire="1 hour" -v 
git gc --aggressive --prune="1 hour" 

注:力推使遠程完全一樣,您當地的分行或主,從而確保沒有其他開發人員,你在做這個工作,改變你的本地工作樹。