繁体   English   中英

如何从fork的原始项目创建一个干净的master分支?

[英]How to create a clean master branch from the origin project of a fork?

好吧,所以我不小心将提交推送到了我的fork的master分支,并将该分支提交给PR。

我现在需要创建另一个PR,但是无论如何我还是不知道可以基于未修改的master分支创建一个新分支(因为我不小心将提交提交到了那里)。 如何基于forks起源项目的master分支创建分支?

需要说明的是:我没有master分支的完整副本,无法基于它创建另一个分支。 我可以使用哪些灵魂解决此问题?

您可以转到上一个提交并从那里分支。 转到您的master分支,并使用git log查看您的提交历史记录,并复制要返回的提交的哈希值(看起来像最近的一个)。

使用git checkout <hash>进行提交。 然后git branch <new branch name>根据clean master分支创建一个新分支。

您可以使用以下命令从先前的提交中创建一个新分支

git checkout -b <new_branch_name> <commit hash>

但是,似乎更大的问题是您现在拥有的主控中不应该存在的提交。 除非强行删除它们,否则您唯一的其他选择就是还原那些提交。 您提到自己是在自己的叉子上,如果没有其他人也在用您的叉子工作,这可能会强行推动一个更好的选择。 如果您要修复母版,可以

git reset --hard <commit hash to revert to>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM