簡體   English   中英

如何在git修訂樹的第一次提交中添加新的基礎

[英]How to add a new base to the first commit of a git revision tree

我已經設置了幾天的git存儲庫。 現在我發現我的起點是基於原始版本的一些工作。 我希望將原始版本添加為第一個提交,並且我當前的所有提交樹都基於它。 可能嗎? 目前的git修訂版:

A --- B --- C --- D大師

我希望在開頭插入一個提交

O --- A --- B --- C --- D高手,這樣我就可以用rebase來生成這樣的分支

O --- A --- B --- C --- D大師
\\ --- D'my_rebase_branch

也許你可以嘗試如下:
1.為原始版本分支創建一個名為base_work的新分支
2.為您的起點創建一個名為others_work的新分支
3.假設您當前的工作分支是my_work。 請嘗試以下命令:

git rebase --onto base_work others_work my_work

該命令將使您的工作基於base_work,而不是others_work。

如果要在現有倉庫的現有提交之上重新創建提交,則需要先在rebase之前導入該倉庫:

cd /path/to/your/repo
git remote add original /url/original/repo
git fetch original

然后你可以使用--root選項進行rebase:

git checkout master
git rebase --onto original/master --root master

如果“ original ”不存在,只要您可以訪問所述版本的內容(源代碼),就可以創建它:

cd /path/to/original/source/code/of/release
git init .
git add .
git commit -m "original release source code"

然后,回到你自己的回購,並重復我提到的命令(不需要rebase --onto在這里)

暫無
暫無

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

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