簡體   English   中英

備份然后用git重置master分支?

[英]Backup then reset master branch with git?

我有一個git存儲庫(在github上),它具有項目的第一個狀態,然后由第一個開發人員放棄。

我們已經決定收回這個項目了,但是我們同意不從前面的代碼開始,因為它與我們計划做的完全不符,並且沒有那么發達。

所以這是一個從頭開始,但我想跟蹤我們的前任做了什么,所以如果需要我們可以參考它。 理想的情況是擁有一個git存儲庫,其中包含我們當前正在處理的master分支,以及一個old-dev分支,在初始提交時從master拆分,跟蹤舊版本的master

閱讀完這些頁面( 重命名你的主分支以及如何創建一個空分支 )之后,我嘗試使用git branch --orphan new-dev創建一個新的分支,並在將master移動到old-dev后用這個替換master git branch -m master old-dev 但是然后git行為奇怪,做了一個初始提交復制舊master然后讓我刪除一切。

我怎么能做我干凈利落的事情,讓master分公司徹底清理舊東西呢? 也許通過創建一個新的存儲庫並導入舊的存儲庫? 或者是否有這樣的工具可以幫助我一個github? 我不知道該怎么辦......

正如在“ 在git中,是否有一種簡單的方法將不相關的分支引入存儲庫? ”, git checkout --orphan “並不完全符合提問者的要求,因為它填充了索引和工作樹來自<start_point> (因為這畢竟是一個checkout命令)“

因此,更簡潔的解決方案是在新的git倉庫中創建新的master分支 ,然后在當前倉庫中導入該分支(其中master已重命名,並且尚未有master分支)

$ cd /path/to/repo
$ git fetch /path/to/unrelated master:master

這樣,您的master分支從干凈的歷史開始。

git checkout old_master -b
git checkout master
rm [all the old directories and files but not .git mind you]
git add -u .
gir commit -m "Brave new world"

現在,您將擁有分支old_master中的舊代碼和一個干凈的目錄。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM