6

我想出了步骤,但似乎很麻烦,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 书籍,但似乎没有一本涵盖这一点。有没有更有效的方法来做到这一点?

4

3 回答 3

47

通常,人们通常会做一个或另一个ForkBranch。听起来你正在创建一个 repo 的 Fork,然后在 fork 中创建一个具有相同名称的分支。如果您使用拉取请求将数据放回主存储库,则无需同时执行这两项操作。选择以下两个工作流程之一:

  • 在 Bitbucket(或其他网站)上分叉 repo
  • 克隆仓库git clone https://bitbucket.org/username/repo-fork.git
  • 在那个叉子上工作git commit -m "some work done"git push -u origin master
  • 创建一个拉取请求以请求将您的更改放回分支的父级

或者

  • 克隆主仓库git clone https://bitbucket.org/username/repo-fork.git
  • 创建一个新的本地分支git checkout -b my-branch
  • 在那个分支工作git commit -m "some work done"
  • 把树枝往上推 git push -u origin my-branch
  • 创建拉取请求

使用分支方法,我假设您有权写入主仓库。如果没有,您将要坚持使用 fork 方法。还有更多的工作流程。Bitbucket 也有一个解释这一点的文档,以及Atlassian 网站上的一个文档,其中对 Git 工作流程有更深入的了解。

于 2013-03-05T17:30:22.757 回答
2

为了创建新分支,我们将使用:(使用此命令将创建一个新分支,并且分支状态也会随着新创建的分支而改变)

git checkout -b branch-name

为了推动更改,我们可以运行以下命令:

git add . 
git commit -m "with meaningful comments" 
git push origin branch-name
于 2018-12-11T08:12:46.293 回答
0

好吧,如果在现有的仓库中创建一个新的仓库而不是一个新的分支,你可以只git clone https://blah <target folder>替换步骤 2-4。

如果没有,您唯一真正的选择是创建一个简单的脚本,该脚本接受远程名称、分支名称和 git url 作为参数,并使用该信息执行步骤 2-4。

于 2013-02-28T14:42:38.617 回答