我正在开发一个关于GitHub的项目。在我的计算机上,我做了六次提交,我还没有推送到GitHub服务器。现在我意识到我想保留云中的当前master
分支,并将提交放在一个名为development
的单独分支中。我怎样才能做到这一点?我是Git和GitHub的新手。
编辑:我还有一些提交,已经在未提交的提交之前被推送到GitHub。我希望将这些保留在两个分支中,只保留development
中的未提交的提交。
答案 0 :(得分:2)
创建一个名为development
的新分支:
git branch development
然后将master移动到遥控器上的位置:
git checkout master
git reset --hard origin/master
现在development
指向您的上一次提交,master
是提交之前的位置。
您可以使用
推送新分支并设置远程跟踪(因此无需其他参数即可推送工作)git push -u origin development
答案 1 :(得分:1)
您要做的第一件事就是在您所处的位置创建一个分支,并且" be"在上面。 git checkout
是唯一可以更改当前分支的命令。它的-b
选项会在顶部创建一个分支(如果你不这样说的话,那就是你现在的那一点):
git checkout -b development
然后,您希望将本地分支master
设置回远程所在的位置。这可以通过将其设置为所谓的"本地远程跟踪分支",这是远程分支的快照(从上次获取/推送的时间开始):
git branch --force master origin/master
您必须在此处使用--force
,否则git branch
将不会更改现有分支。
答案 2 :(得分:0)
假设您已向local
主分支提交;在本地创建一个新分支并调用该开发
git branch development
git checkout development
你的提交将在这个新的分支中存在,你可以在git world中推送到云也称为远程
git push origin development
请确保您不
git push origin master
如果是这样,远程/云主人会有你的提交;我认为你不需要