git - 启动新功能分支的正确工作流程
git - proper work flow for starting new feature branch
我需要为 github 上的项目创建新功能。我可以访问该帐户。我创建了一个名为 'myBranch' 的新 b运行ch。比,在航站楼 I 运行 git clone https://github.com/test/example.git
。现在,如果我 运行 git b运行ch -a 我看到我在 master 上签出并且我新创建的 b运行ch 是红色的。
在 github 上创建新的 b运行ch 是否有误?因为现在它是一个远程 b运行ch,我真正想要的是在本地开始处理新功能。
我的问题有两个。我是否应该通过克隆远程仓库然后 运行ning git branch 'someNewBranch'
在本地创建 b运行ch。在那种情况下,我会简单地签出 b运行ch 并开始处理该项目并正常提交而不是推送?这会在 github 上创建一个新的远程 b运行ch,它是我的新本地 b运行ch 的副本吗?或者,鉴于我已经通过 github 的界面创建了一个远程 b运行ch,是否有一种通用的方法可以简单地开始处理那个 b运行ch?
我不认为将它作为远程分支是错误的。正确的做法是保留您在 github 上所做的历史记录。
针对你的问题。如果您首先克隆并创建了一个分支,那么它还没有远程等价物。但是在你尝试推送的那一刻,无论如何你都必须创建一个远程分支。 Git 永远不会自动创建远程分支(使用默认设置)。它将给出以下消息:
fatal: The current branch blob has no upstream branch.
To push the current branch and set the remote as upstream, use
git push --set-upstream origin <yourbranchname>
如果您对已经创建的远程分支执行此操作,则可以通过如上所述设置上游来连接分支。或者你拉出来结帐:
git checkout <branchname>
开始分支并在其上工作的最简单方法是:
git branch <yourbranchname>
git checkout <yourbranchname>
然后当您进行一些提交时:
git push --set-upstream origin <yourbranchname>
但是为特性创建一个远程分支并没有错。这样其他开发人员也可以检查它。
如果您完成了分支的工作,您可以将其与 master(或您的开发分支)合并:
git checkout develop
git merge <branchname>
然后用特征名称标记它:
git tag feature/<myfeaturename>
如果您有 gpg 密钥,您甚至可以在上面签名以声明您是所有者:
git tag -s feature/myfeature
然后您可以再次安全地删除它:
git branch -d <mybranch>
然后你知道,当你合并你的功能到你的开发分支并防止你的分支列表增长
如果你在github上创建了分支,也就是你所说的远程分支。现在你只需要在本地获取它:
git fetch origin
此时您将拥有功能分支的本地副本。
通过以下方式开始处理它:
git checkout your-feature-branch
如果您先在本地创建分支,则执行此操作以在 github 上创建它并推送:
git push --set-upstream-to origin your-feature-branch
我需要为 github 上的项目创建新功能。我可以访问该帐户。我创建了一个名为 'myBranch' 的新 b运行ch。比,在航站楼 I 运行 git clone https://github.com/test/example.git
。现在,如果我 运行 git b运行ch -a 我看到我在 master 上签出并且我新创建的 b运行ch 是红色的。
在 github 上创建新的 b运行ch 是否有误?因为现在它是一个远程 b运行ch,我真正想要的是在本地开始处理新功能。
我的问题有两个。我是否应该通过克隆远程仓库然后 运行ning git branch 'someNewBranch'
在本地创建 b运行ch。在那种情况下,我会简单地签出 b运行ch 并开始处理该项目并正常提交而不是推送?这会在 github 上创建一个新的远程 b运行ch,它是我的新本地 b运行ch 的副本吗?或者,鉴于我已经通过 github 的界面创建了一个远程 b运行ch,是否有一种通用的方法可以简单地开始处理那个 b运行ch?
我不认为将它作为远程分支是错误的。正确的做法是保留您在 github 上所做的历史记录。
针对你的问题。如果您首先克隆并创建了一个分支,那么它还没有远程等价物。但是在你尝试推送的那一刻,无论如何你都必须创建一个远程分支。 Git 永远不会自动创建远程分支(使用默认设置)。它将给出以下消息:
fatal: The current branch blob has no upstream branch.
To push the current branch and set the remote as upstream, use
git push --set-upstream origin <yourbranchname>
如果您对已经创建的远程分支执行此操作,则可以通过如上所述设置上游来连接分支。或者你拉出来结帐:
git checkout <branchname>
开始分支并在其上工作的最简单方法是:
git branch <yourbranchname>
git checkout <yourbranchname>
然后当您进行一些提交时:
git push --set-upstream origin <yourbranchname>
但是为特性创建一个远程分支并没有错。这样其他开发人员也可以检查它。
如果您完成了分支的工作,您可以将其与 master(或您的开发分支)合并:
git checkout develop
git merge <branchname>
然后用特征名称标记它:
git tag feature/<myfeaturename>
如果您有 gpg 密钥,您甚至可以在上面签名以声明您是所有者:
git tag -s feature/myfeature
然后您可以再次安全地删除它:
git branch -d <mybranch>
然后你知道,当你合并你的功能到你的开发分支并防止你的分支列表增长
如果你在github上创建了分支,也就是你所说的远程分支。现在你只需要在本地获取它:
git fetch origin
此时您将拥有功能分支的本地副本。
通过以下方式开始处理它:
git checkout your-feature-branch
如果您先在本地创建分支,则执行此操作以在 github 上创建它并推送:
git push --set-upstream-to origin your-feature-branch