我创建了一个本地分支。如何将其推送到远程服务器?

更新:我在这里为Git2.0写了一个更简单的答案。


当前回答

在本地计算机上创建分支并在此分支中切换:

$ 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 {branchName}

创建一个新分支,它也会检出该分支/使其成为当前分支。如果出于某种原因,您只想捕捉一个分支,而不想将其作为当前分支,则可以使用以下命令:

git branch {branchName}

在第一个命令中,“checkout”使所述分支成为当前分支,“-b”表示:该分支还不存在,所以请为我创建。

你可以简单地,

git结帐-b YOUR-NEW-BRANCH-NAMEgit添加。git推送原点YOUR-NEW-BRANCH-NAME

您可以在相关git repo下看到您的分行代码

干杯!!:)

简单的Git 2.0+解决方案:

从Git2.0开始,行为变得更加简单:

您可以使用push.default=current配置git,以使生活更轻松:

我添加了这个,所以现在我可以用

$ git push -u

-您将跟踪同名的远程分支。现在使用此配置,您将自动猜测gitpush的远程引用。从git.config文档中:

推送故障定义如果没有明确给定refspec,git push应该采取的操作。push.default=current-推送当前分支以使用接收端的名称相同。可在中央和非中央工作流中工作。

对我来说,这是我日常Git工作流程的一个很好的简化。配置设置负责在本地添加分支并希望远程创建分支的“通常”用例。此外,我也可以通过执行git-co-remote_branch_name(而不是使用--set upstream-to-flag),从远程创建本地分支。

我知道这个问题和公认的答案都很陈旧,但行为已经改变,现在有了配置选项,可以简化您的工作流程。

要添加到全局Git配置,请在命令行上运行以下命令:

$ git config --global push.default current

基于当前分支在本地创建新分支:

git checkout -b newbranch

按正常方式提交任何更改。然后,将其向上推:

git push -u origin HEAD

这是一个快捷方式,可以将当前分支推送到原点上同名的分支并跟踪它,这样以后就不需要指定原点HEAD了。

从Git2.37.0开始,您不再需要“--setupstreamorigin”。只要按一下。您可以通过启用push.autoSetupRemote选项来实现这一点

git-config--global--add--bool push.autoSetupRemote true