2016-12-02 71 views
0

我一直致力於開源github項目中的代碼拉動。 我一直在努力一段時間。我一直在私人bitBucket存儲庫中存儲它。不幸的是,在我早些時候向我的私人版本的代碼中添加了一些敏感數據。在最新版本的代碼中,我手動刪除了敏感數據。我想從我的私人回購中將我的代碼的乾淨版本推送到github,但只有最新版本的代碼。Git Segragate多個遙控器之間的數據

有沒有一種方法可以從我的回購中僅推送最新版本的代碼,而不用將所有過去提交的敏感信息仍然保留在文件中?

回答

0

有很多不同的方法來做到這一點。我能想到的最簡單的方法就是這些。

  1. 建立一個新的分支。然後用你最新的代碼進行一次提交。只要將這一個分支推到gitHub。 rm -Rf * git checkout <your_original_branch> -- . git add . git commit -am 'my work'
  2. 克隆一個全新的回購,使你的分支,並做一個非常類似的事情。 rm -Rf * cp -a /path/to/your/work . git add . git commit -am 'my work'

第二種解決方案是醜陋的,恕我直言,但它有一個新的回購有沒有敏感信息在它在所有所以沒有機會,你可以按錯分支和發佈敏感信息的優勢。

我確定其他人會用更聰明和更多的git-y解決方案做出迴應,但這些都很簡單。

+0

相信它是否是我帶來的前兩種選擇,但我擔心** Option 1 **會無意中發送歷史記錄。或者我會以某種方式搞亂選項1,然後發送歷史記錄。對於**選項2 **我同意它不是非常* git-y *我有一個同事建議一個複雜的基於rebase的解決方案。 – Raystorm