Git:创建新分支并推送到远程的高效步骤

7
我找到了步骤,但似乎很繁琐,以bitbucket为例,假设我已经有一个名为prj的项目。
  1. 从服务器端(bitbucket.com)分支出一个新项目,称为prj-bz
  2. 从本地添加一个远程库git remote add prj-bz https://blah...
  3. 同时从本地创建一个名为prj-bz的新分支。
  4. 从本地调用git push prj-bz prj-bz,使本地仓库和远程仓库相连。
我查看了一些git书籍,但好像没有涵盖这个内容。有更有效的方法吗?

1
不,没有有效的方法可以做到这一点。你认为怎样才能更有效率呢? - Wouter J
也许第一步可以省略? - Mike
哦,我想我理解错了。在第1步中,您是指在Bitbucket上创建分支吗? - Wouter J
4个回答

48
通常情况下,人们通常会选择其中之一——分叉或分支。听起来你正在对一个 repo 进行分叉,然后在分叉中创建一个同名的分支。如果您正在使用 Pull Request 将数据放回主 repo,则不需要同时进行两者。请选择以下两种工作流程之一:
  • 在 Bitbucket(或其他网站)上分叉 repo
  • 克隆 repo git clone https://bitbucket.org/username/repo-fork.git
  • 在该分叉中工作 git commit -m "some work done"git push -u origin master
  • 创建 Pull request 以请求将更改放回分叉的父级

或者

  • 克隆主repo git clone https://bitbucket.org/username/repo-fork.git
  • 创建一个新的本地分支 git checkout -b my-branch
  • 在该分支上工作 git commit -m "some work done"
  • 将分支推送到远程 origin git push -u origin my-branch
  • 创建一个Pull请求

使用分支方法,我假设您有写入主repo的权限。如果没有,您将要坚持使用fork方法。还有更多的工作流程。Bitbucket也有一个doc explaining this以及一个关于Git工作流程更深入的Atlassian's website


谢谢Marcus,我使用了你提到的“分支”方法,它完美地运行了。 - Mike
7
这里最重要的步骤是 git push -u origin my-branch。需要翻译成中文,我会尽力使其更加通俗易懂,但不改变原意。 - Peter Lustig

2

创建新分支的方法如下: (使用此命令将创建一个新分支,同时分支状态也会随着新分支的创建而改变)

git checkout -b branch-name

我们可以运行以下命令来推送更改:

git add . 
git commit -m "with meaningful comments" 
git push origin branch-name

0
如果您想在现有分支中创建新的仓库,您可以直接使用 git clone https://blah <target folder> 命令代替第二步至第四步。
如果不是这种情况,您只能创建一个简单的脚本来接受远程名称、分支名称和 git URL 作为参数,并使用这些信息执行第二步至第四步。

0

创建“dev”或“prj-bz”分支并保存所有更改的简单步骤:

步骤1:创建一个dev分支来保存开发更改。

git checkout -b dev
git add .
git commit -m “Your commit message”
git push -u origin dev

步骤2:进行所有开发工作,每当您需要将更改推送到dev分支时,

git add .
git commit -m “Your commit message”
git push origin dev

步骤三:在生产环境中最终确定更改后,将从开发到主要分支的更改合并。

git push origin dev
git checkout main
git merge dev
git push origin main

步骤4:合并完成后,返回dev分支进行所有开发工作,并重复第2步。

git checkout dev

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接