Jes*_*sen 3030 git branch git-branch
我创建了一个本地分支,我想在上游"推".Stack Overflow上有一个关于如何跟踪新创建的远程分支的类似问题.
但是,我的工作流程略有不同.首先,我想创建一个本地分支,当我满意并希望分享我的分支时,我只会将其推送到上游.
更新使用Git 2.0,我在下面写了一个更简单的答案:https://stackoverflow.com/a/27185855/109305
Ikk*_*kke 3635
首先,在本地创建分支:
git checkout -b <branch-name> # Create a new branch and check it out
Run Code Online (Sandbox Code Playgroud)
将其推送到远程服务器时,将自动创建远程分支.因此,当您准备好它时,您可以这样做:
git push <remote-name> <branch-name>
Run Code Online (Sandbox Code Playgroud)
<remote-name>
通常在哪里origin
,git为您克隆的远程提供的名称.然后你的同事就会拉出那个分支,它会在本地自动创建.
但请注意,正式格式为:
git push <remote-name> <local-branch-name>:<remote-branch-name>
Run Code Online (Sandbox Code Playgroud)
但是当你省略一个时,它假定两个分支名称是相同的.说完这个之后,请注意,不要仅仅指定:<remote-branch-name>
(使用冒号),否则远程分支将被删除!
因此,后续人员git pull
将知道该怎么做,您可能会想要使用:
git push --set-upstream <remote-name> <local-branch-name>
Run Code Online (Sandbox Code Playgroud)
如下所述,该--set-upstream
选项设置上游分支:
对于每个最新或成功推送的分支,添加上游(跟踪)引用,由无参数git-pull(1)和其他命令使用.
dse*_*ara 858
首先,您必须在本地创建分支
git checkout -b your_branch
Run Code Online (Sandbox Code Playgroud)
之后,您可以在分支机构中本地工作,当您准备共享分支时,推送它.下一个命令将分支推送到远程存储库源并跟踪它
git push -u origin your_branch
Run Code Online (Sandbox Code Playgroud)
队友可以通过以下方式联系您的分支机构:
git fetch
git checkout origin/your_branch
Run Code Online (Sandbox Code Playgroud)
您可以继续在分支中工作并随时推送而无需将参数传递给git push(无参数git push会将master推送到远程master,your_branch本地到远程your_branch等等)
git push
Run Code Online (Sandbox Code Playgroud)
队友可以通过提交推送到您的分支,然后明确推送
... work ...
git commit
... work ...
git commit
git push origin HEAD:refs/heads/your_branch
Run Code Online (Sandbox Code Playgroud)
或者跟踪分支以避免git push的参数
git checkout --track -b your_branch origin/your_branch
... work ...
git commit
... work ...
git commit
git push
Run Code Online (Sandbox Code Playgroud)
Jes*_*sen 315
从Git 2.0开始,行为变得更加简单:
您可以配置git push.default = current
以简化生活:
我添加了这个,所以现在我可以在上游推送一个新的分支
$ git push -u
Run Code Online (Sandbox Code Playgroud)
-u
将跟踪同名的远程分支.现在使用此配置,您将自动猜测对git push的远程引用.从git.config文档:
push.default
如果没有明确给出refspec,则定义git push应采取的操作.
push.default = current
- 推送当前分支以在接收端更新具有相同名称的分支.适用于中央和非中央工作流程.
对我来说,这是我日常Git工作流程的一个很好的简化.配置设置负责处理本地添加分支并希望远程创建的"常规"用例.此外,我可以通过刚刚做git co remote_branch_name
(而不是使用--set-upstream-to
标志)轻松地从遥控器创建本地分支.
我知道这个问题并且接受的答案相当陈旧,但行为已经改变,因此现在存在配置选项以使您的工作流程更简单.
要添加到全局Git配置,请在命令行上运行:
$ git config --global push.default current
Run Code Online (Sandbox Code Playgroud)
小智 77
如前面的答案所述,
git push <remote-name> <local-branch-name>:<remote-branch-name>
Run Code Online (Sandbox Code Playgroud)
足以推动当地分行.
您的同事可以使用以下命令提取所有远程分支(包括新分支):
git remote update
Run Code Online (Sandbox Code Playgroud)
然后,要在分支上进行更改,通常的流程:
git checkout -b <local-branch-name> <remote-name>/<remote-branch-name>
Run Code Online (Sandbox Code Playgroud)
Zen*_*xer 63
根据当前分支在本地创建新分支:
git checkout -b newbranch
Run Code Online (Sandbox Code Playgroud)
像往常一样提交任何更改.然后,将其推向上游:
git push -u origin HEAD
Run Code Online (Sandbox Code Playgroud)
这是将当前分支推送到同名分支并在其上origin
跟踪的快捷方式,以便您origin HEAD
以后不需要指定.
sre*_*mar 47
如果要从当前分支创建分支
git checkout -b {your_local_branch_name}
Run Code Online (Sandbox Code Playgroud)
你想要一个远程分支的分支,你可以试试
git checkout -b {your_local_branch_name} origin/<remote_branch_name>
Run Code Online (Sandbox Code Playgroud)
如果您完成了更改,则可以添加该文件.
git add -A or git add <each_file_names>
Run Code Online (Sandbox Code Playgroud)
然后在本地进行提交
git commit -m 'your commit message'
Run Code Online (Sandbox Code Playgroud)
当你想推送到远程仓库时
git push -u origin <your_local_branch_name>
Run Code Online (Sandbox Code Playgroud)
一起将是
git checkout -b bug_fixes
Run Code Online (Sandbox Code Playgroud)
或者如果要从远程分支创建分支,请说开发
git checkout -b bug_fixes origin/development
您可以将分支推送到远程仓库
git push -u origin bug_fixes
Run Code Online (Sandbox Code Playgroud)
任何时候你想从任何其他分支更新你的分支说主.
git pull origin master
.
Tas*_*dar 42
如果你想在没有本地的情况下创建远程分支,你可以这样做:
git push origin HEAD:refs/heads/foo
Run Code Online (Sandbox Code Playgroud)
它将您的HEAD推送到遥控器上不存在的分支foo.
sap*_*apy 33
最简单的解决方案...... Drumm Roll ... git版本2.10.1(Apple Git-78)
1) git checkout -b localBranchNameThatDoesNotExistInRemote
2) Do your changes, and do a git commit
3) git push origin localBranchNameThatDoesNotExistInRemote --force
Run Code Online (Sandbox Code Playgroud)
注意 - 您刚刚在本地环境中创建的分支以及您尝试推送的远程不存在分支必须具有相同的名称.
ipe*_*sus 23
首先,您在本地创建分支:
git checkout -b your_branch
Run Code Online (Sandbox Code Playgroud)
然后远程创建分支:
git push --set-upstream origin your_branch
Run Code Online (Sandbox Code Playgroud)
注意:这适用于git的最新版本:
$ git --version
git version 2.3.0
Run Code Online (Sandbox Code Playgroud)
干杯!
小智 22
你可以简单地,
git checkout -b YOUR-NEW-BRANCH-NAME
git add .
git push origin YOUR-NEW-BRANCH-NAME
您可以在相关 git 存储库下看到您的分支以及代码
干杯!:)
小智 17
在本地计算机上创建分支并切换到此分支:
$ git checkout -b [name_of_your_new_branch]
Run Code Online (Sandbox Code Playgroud)
在github上推分支:
$ git push origin [name_of_your_new_branch]
Run Code Online (Sandbox Code Playgroud)
当你想在你的分支中提交某些东西时,一定要在你的分支中.
您可以使用以下命令查看所有分支:
$ git branch
Run Code Online (Sandbox Code Playgroud)
哪个会显示:
* approval_messages
master
master_clean
Run Code Online (Sandbox Code Playgroud)
为您的分支添加新远程:
$ git remote add [name_of_your_remote]
Run Code Online (Sandbox Code Playgroud)
将提交中的更改推送到您的分支:
$ git push origin [name_of_your_remote]
Run Code Online (Sandbox Code Playgroud)
更新官方存储库中的原始分支时更新您的分支:
$ git fetch [name_of_your_remote]
Run Code Online (Sandbox Code Playgroud)
然后,如果您的分支派生自您需要做的开发,则需要申请合并更改:
$ git merge [name_of_your_remote]/develop
Run Code Online (Sandbox Code Playgroud)
删除本地文件系统上的分支:
$ git branch -d [name_of_your_new_branch]
Run Code Online (Sandbox Code Playgroud)
要强制删除文件系统上的本地分支:
$ git branch -D [name_of_your_new_branch]
Run Code Online (Sandbox Code Playgroud)
删除github上的分支:
$ git push origin :[name_of_your_new_branch]
Run Code Online (Sandbox Code Playgroud)
ios*_*tor 12
从现有分支创建本地分支(可以是master/develop/any-other-branch).
git checkout -b branch_name
将其推到远程
git push -u remote_name local_branch_name:remote_branch_name
这里,
如果我们删除本地和远程分支名称,它将具有该格式
git push -u remote_name branch_name
这会将本地分支推送到远程并且具有与本地分支branch_name相同的名称.本地分支也将跟踪远程分支.
我知道这个问题得到了很好的回答,但只是想列出我创建新分支"myNewBranch"并推送到远程(我的情况下为"origin")并设置跟踪的步骤.考虑这个"TL; DR"版本:)
# create new branch and checkout that branch
git checkout -b myNewBranch
# now push branch to remote
git push origin myNewBranch
# set up the new branch to track remote branch from origin
git branch --set-upstream-to=origin/myNewBranch myNewBranch
Run Code Online (Sandbox Code Playgroud)
您可以在2个陡峭的山坡上做到这一点:
1.使用checkout
创建本地分支:
git checkout -b yourBranchName
Run Code Online (Sandbox Code Playgroud)
2.使用push
命令自动创建分支并将代码发送到远程存储库:
git push -u origin yourBanchName
Run Code Online (Sandbox Code Playgroud)
有多种方法可以做到这一点,但我认为这种方法非常简单。
现在使用git,当你在正确的分支中时,你可以输入
git push --set-upstream origin <remote-branch-name
>
和git为你创建原始分支.
只想添加:
git checkout -b {branchName}
Run Code Online (Sandbox Code Playgroud)
创建一个新分支,它还会检出该分支/使其成为当前分支.如果由于某种原因,您想要做的就是截断分支但不使其成为当前分支,那么您将使用以下命令:
git branch {branchName}
Run Code Online (Sandbox Code Playgroud)
在第一个命令中,"checkout"使所述分支成为当前分支," - b"表示:此分支尚不存在,所以请为我做.
如何通过源树
1: Open SourceTree, click on Repository -> Checkout
2 :Click on Create New Branch
3: Select branch where from you want to get code for new branch
4: Give your branch name
5: Push the branch (by click on Push button)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1999182 次 |
最近记录: |