Tag: filter-branch

  • 移除 Git Repo 中的敏感資料… [solved]

    原本我的程式碼都託管在 BitBucket.org 上,選擇這家服務是因為他們的計費方式是算人頭的,而不是算專案數,對於我個人的小專案來說等於是無限的免費使用。 最近和幾個對程式開發有興趣的朋友、同事在 GitHub 上弄了 Private Repository,開始有了將幾個小專案丟過去讓大家參與開發的念頭。不過因為許多專案在初期我就把帳密等一些敏感訊息也跟著 commit 出去了,年輕不懂事。 需要把 repo 裡的敏感檔案刪除。 GitHub 有一篇教學文 Remove sensitive data。但是第一次耍蠢,忘記切換到 master 就下刪除指令,結果 history 變成這樣…. 於是 git branch -D phpQRCode 移除了整條線。重下一次指令… 這樣的情況有點囧…. Tag 沒有移過去,不曉得是不是因為沒下 –tag-name-filter cat 的關係。總之,現在感到相當困擾。繼續研究怎麼處理。     [Updated: 2013-04-22] 後來用 rebase 先整理過 history 後,用以下指令移除檔案。 git filter-branch -f –tag-name-filter cat –index-filter ‘git rm –cached –ignore-unmatch — path/file’ –prune-empty…