我创建了一个新的Rails应用,并将代码直接从master(在存储库中的第一次提交)推送到Github。但是我犯了一个错误,我不想直接从master提交这个新的Rails应用,而是从master创建一个新分支,并从这个新分支推送新的Rails应用。
因此,我想:
答案 0 :(得分:2)
在Github(远程)中删除主服务器的提交,因此主服务器为空
您可以创建一个孤立分支-孤立分支是没有任何历史记录的分支
# Create "clean" branch
git checkout --orphan <name>
# remove all existing content if you wish
git clean -Xdf && git clean -xdf
从master创建一个新分支,并将master中的先前提交添加到该新分支中。
少数选项:
# Option 1 - Start your branch from the last desired commit
git checkout -b <name> <SHA-1>
# Option 2 - Set your branch to the desired commit
git reset <SHA-1> --hard
# Add the required commit on top of your branch
git cherry-pick <SHA-1>
将其推送到Github。
# force the update of the new branch
git push <origin> master -f
答案 1 :(得分:1)
请使用以下命令从母版创建一个新分支
git checkout -b branch_name
在结帐后进入您的新分支,并将其推送到Github。
现在转到master分支并进行remove the last提交并将其推送到Github
答案 2 :(得分:1)
您还可以对存储库尝试以下步骤:
git checkout master
:确保您在掌握中。git checkout -b my-fancy-new-branch
:创建新的功能分支。git checkout master
:切换回母版git reset --hard rootcommit
:在您自己提交之前将master重置为状态。git pull --ff
(如果由于拉拔不是快速进行而失败,则必须重新考虑rootcommit
。它包含您的一些工作)< / li>
我试图在我的测试库中执行此操作,它似乎可以正常工作。
我从answer中获得了参考,也可以帮助找到其他方法。