![](/img/trans.png)
[英]Make a new branch from master then revert master back to certain commit
[英]git branching - how to make current master a branch and then revert master back to previous version?
這可能很簡單,但我目前是 git 菜鳥,還沒有完全了解 git 分支 model。
假設我目前除了master
之外沒有任何分支,但現在我做了一些更改,因為我決定不想保留上次提交(注意:更改尚未提交)。 不過,我還不想擺脫這些更改——我想將它們放在他們自己的分支中(例如, experimental_stuff
),然后從我之前的提交繼續開發。 所以我想步驟是:
git branch experimental_stuff
?)git checkout <last_commit>
?)git???
)這是正確的方法嗎?最后一部分(如果有的話)需要什么 git 命令?
[注意:這只是我個人使用的本地 git 存儲庫,如果有任何區別。 ]
你快完成了。
假設您已對開發文件進行了提交。 然后..
git 分支experimental_stuff
git reset --hard HEAD^(返回主分支的上一個提交以繼續開發)
假設您尚未對開發文件進行提交。 然后..您需要將當前更改保存到臨時目錄
git 存儲
git checkout -b experimental_stuff(創建分支並將其更改為 experiental_stuff)
git stash pop(將臨時目錄填充到實驗分支)
git checkout master(返回master,這次不需要go返回之前的commit,因為你沒有那個commit)
假設我目前沒有這樣的分支機構
只是為了糾正你:你總是在 Git 中至少有一個分支。 甚至 master 也是一個分支,具有與任何其他分支相同的功能。 並且 Git 不處理名為 master 的分支,而不是另一個分支。 這只是一個約定,大多數開發人員將他們的主分支命名為“master”,但您不需要這樣做。 您甚至可以刪除您的主分支並創建開發、發布等分支。對於您的問題本身:Kit Ho 的回答很好。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.