2017-09-01 47 views
0

我們將一些存儲庫從GitHub移動到BitBucket,我們不想刪除GitHub中的存儲庫,因爲我們在問題跟蹤器中仍然存在一些問題。我們正在等待this bug被解決,所以我們可以正確地導出問題。因此,現在我們只想刪除存儲庫的所有歷史記錄,並在初始提交時插入一個非常小的README.md文件。如何刪除所有提交併替換Git存儲庫中的初始提交?

回答

0

使用此:

$ git reset --hard `git rev-list --max-parents=0 HEAD` 
$ git rm -r '*' 

然後執行下列操作之一:

$ git commit --amend --allow-empty 

,或者如果你想用一個README文件,利用這一點,但在此之前,請使用您喜歡的文本替換vim /代碼編輯器,而不是README.md使用你想要的名稱爲初始提交的單個文件:

$ vim README.md 
$ git add README.md 
$ git commit --amend 

我寫了這個答案,幫助從this,thisthis StackOverflow答案。

+1

你也可以只初始化一個新的回購,添加單個文件,設置相同遠程和強制推動它。 – jonrsharpe

+0

@jonrsharpe我試過你的方法,它的功能很好。謝謝。 – silviubogan

1
  1. 將您的工作目錄複製到新目錄。

  2. 在目錄裏面做git init; git add.; git commit -m 'First Commit Message'

  3. 如果你想發佈這個新的回購到遠程服務器中的一個,只需增加服務器遠程與git remote add remote-name remote-URL然後git push remote-name的東西上傳到遠程你只需添加到新的回購和更新該遠程與這個新回購的內容。

    在遠程已經在master分支東西的情況下,你可以需要-f奧爾塞推:git push -f remote-name