我创建了一个本地分支。如何将其推送到远程服务器?
更新:我在这里为Git2.0写了一个更简单的答案。
我创建了一个本地分支。如何将其推送到远程服务器?
更新:我在这里为Git2.0写了一个更简单的答案。
当前回答
基于当前分支在本地创建新分支:
git checkout -b newbranch
按正常方式提交任何更改。然后,将其向上推:
git push -u origin HEAD
这是一个快捷方式,可以将当前分支推送到原点上同名的分支并跟踪它,这样以后就不需要指定原点HEAD了。
其他回答
在本地计算机上创建分支并在此分支中切换:
$ git checkout -b [name_of_your_new_branch]
推动github上的分支:
$ git push origin [name_of_your_new_branch]
当你想在你的分支中提交一些事情时,一定要在你的分行中。
您可以看到使用以下方法创建的所有分支:
$ git branch
将显示:
* approval_messages
master
master_clean
为分支添加新的远程:
$ git remote add [name_of_your_remote]
将提交中的更改推送到分支中:
$ git push origin [name_of_your_remote]
更新官方存储库中的原始分支后,更新分支:
$ git fetch [name_of_your_remote]
然后,您需要申请合并更改,如果您的分支是从开发派生的,则需要执行以下操作:
$ git merge [name_of_your_remote]/develop
删除本地文件系统上的分支:
$ git branch -d [name_of_your_new_branch]
要强制删除文件系统上的本地分支,请执行以下操作:
$ git branch -D [name_of_your_new_branch]
删除github上的分支:
$ git push origin :[name_of_your_new_branch]
此处显示所有信息
其他现有项目
首先,创建一个新的本地分支并签出:
git checkout -b <branch-name>
当您将远程分支推送到远程服务器时,将自动创建远程分支:
git push <remote-name> <branch-name>
<remote name>通常是origin,这是git给从中克隆的远程设备的名称。然后,你的同事可以简单地拉那根树枝。
但请注意,正式的格式是:
git push <remote-name> <local-branch-name>:<remote-branch-name>
但如果省略一个,则假定两个分支名称相同。说了这句话,作为一个警告,不要犯只指定:<remote branch name>(带冒号)的严重错误,否则远程分支将被删除!
为了让后续的git pull知道该怎么做,您可能需要使用:
git push --set-upstream <remote-name> <local-branch-name>
如下所述,--set upstream选项设置上游分支:
对于每个最新或成功推送,添加上游(跟踪)引用,由使用无参数git pull(1)和其他命令。
从Git2.37.0开始,您不再需要“--setupstreamorigin”。只要按一下。您可以通过启用push.autoSetupRemote选项来实现这一点
git-config--global--add--bool push.autoSetupRemote true
如果已使用--single branch克隆当前分支,请使用此命令从当前分支创建新分支:
git checkout -b <new-branch-name>
git push -u origin <new-branch-name>
git remote set-branches origin --add <new-branch-name>
git fetch
如前面的回答中所述,
git push <remote-name> <local-branch-name>:<remote-branch-name>
足以推动本地分支。
您的同事可以使用以下命令拉动所有远程分支(包括新分支):
git remote update
然后,要对分支进行更改,通常的流程如下:
git checkout -b <local-branch-name> <remote-name>/<remote-branch-name>