2016-01-20 69 views
0

這是我的情況:如何刪除文件從遠程回購沒有做任何地方在git?

我想做一次完成推到git回購。所以,我照常做了add,commitpush。除此之外,我忘記了之前提交的其他文件也被推送。所以,現在有不必要的文件污染了我推送到的遠程回購(repo)(遠程)。我想刪除這些不必要的文件。

我不想從遠程回購拉,因爲我不想獲取任何這些文件。所以,我實際上想要做一些類似於git filter-branch的事情,但僅限於遠程回購。

如何在不本地再次推/拉的情況下從遠程倉庫中刪除文件?

回答

0

您可以恢復提交(git revert [commit sha]),然後再次正確刪除不需要的文件並保留所做的文件,然後將其打包在新的提交中。

+0

但是這些文件是否仍然存在於遠程存儲庫的歷史記錄中? – Hunle

+0

刪除文件的歷史記錄始終保留在git中,這並不是一件壞事。 如果你真的非常渴望在歷史中沒有它,你可能會希望在更改之前重置分支,刪除這些文件然後執行強制推送。但強迫推動應該作爲最後的手段措施,如果他們可以避免,那麼他們應該不惜一切代價:http://willi.am/blog/2014/08/12/the-dark-side-of-the -force推/ – mohammedkhan

相關問題