我不小心从 origin 的 master 分支创建了一个新分支,并将更改提交到该分支。
让我们将我创建的新分支命名为 Accidental_Branch
。
但是我应该从另一个分支创建新分支,比如说Feature_Branch
。主分支不是最新的,我的团队将所有更改提交给 Feature_Branch
,我应该从中创建新分支。这就是我想要的。
删除我创建的分支,即
Accidental_Branch
。我不想丢失在本地所做的更改,因为我想使用该更改创建一个新分支。从
Feature_Branch
创建新分支。并提交更改。更改含义、我已提交给Accidental_Branch
的更改以及我在本地未提交的更改。
请帮帮我。我是 GIT 新手。
最佳答案
要保存未提交的更改,您可以生成 stash (兑现所选文件) git stash save "optional stash-message"
.
这样您就可以缓存您的文件,这样您就不会丢失它们。之后git stash
您可以通过 git branch -d <branch_name>
删除意外生成的分支本地和远程删除 git push origin --delete <branch_name>
.
检查了您将启动新分支 ( git checkout <branch_name>
) 的分支,并使用 git branch <branch_name>
创建您的新分支并按上面的说明检查这一点,然后使用 git stash apply stash@{0}
应用生成的存储。 .
如何git stash
作品对此进行了简单的解释website-blog .
编辑,为什么问题不够清楚:
如果您意外分支中的更改已经推送到远程服务器,那么 git stash
不起作用。在这种情况下,您必须revert提交,其中包括您不想丢失的更改。 git revert
命令将创建具有相反效果的新更改,从而撤消指定的旧提交,因此更改将再次可用并且不会丢失。
git revert
之后您已将更改的文件放在工作目录中,并且可以创建新分支。如果新分支在另一个分支中启动,您必须再次存储未提交的文件,创建并 checkout 新生成的分支,并按照上面的说明在此分支中应用存储。
关于git - 如何从远程仓库中的master删除GIT分支并从另一个分支启动一个新分支?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65970160/