以下是我在master分支中使用的命令
git branch experiment
git checkout experiment
Run Code Online (Sandbox Code Playgroud)
然后我对我的文件进行了一些更改,提交了更改,并将新分支推送到GitHub.
git commit .
git push -u origin experiment
Run Code Online (Sandbox Code Playgroud)
请注意,在git commit .提示我提交提交消息后,我给了它一个.后来我决定将我的实验分支合并到主分支中.
git checkout master
git merge experiment
Run Code Online (Sandbox Code Playgroud)
最后我将更改推送到GitHub.
git push -u origin master
Run Code Online (Sandbox Code Playgroud)
一切顺利,直到我尝试删除我的实验分支使用
git branch -d experiment
Run Code Online (Sandbox Code Playgroud)
我收到了错误消息error: The branch 'experiment' is not fully merged.我对git有点新鲜,我不知道我有多可能合并这两个分支.我在这里错过了什么?
假设我们有一个稳定的应用程序.
明天,有人会报告我们决定立即修补的大错误.因此,我们为"master"创建了一个针对该修补程序的分支,我们将其命名为"2011_Hotfix",然后我们将其推送到所有开发人员可以协作修复它.
我们修复了这个bug,并将"2011_Hotfix"合并到"master"以及当前的开发分支中.推"主人".
我们现在用"2011_Hotfix"做什么?它应该只是作为一个分支永远坐在那里直到时间结束,还是我们现在应该删除它,因为它已经达到了它的目的?将分支放在各处都是不洁净似乎是不洁净的,因为分支列表可能会变得很长,其中大部分都不再需要了.
如果它应该被删除,它的历史会发生什么?即使实际的分支不再可用,这是否会得到维护?另外,我如何删除远程分支?
我有一个git分支调用9-sign-in-out完美的代码,我想把它变成主.我现在在主分公司.
$ git branch
9-sign-in-out
* master
Run Code Online (Sandbox Code Playgroud)
我正在尝试切换到9-sign-in-out分支,但它不允许我:
$ git checkout 9-sign-in-out
app/helpers/application_helper.rb: needs merge
config/routes.rb: needs merge
error: you need to resolve your current index first
Run Code Online (Sandbox Code Playgroud)
任何想法如何忽略所有主分支错误并将9-sign-in-out分支转换为主分支?也许是git rebase?但我不想丢失9-sign-in-out分支中的代码.
我有一个在GitHub上托管的项目,有人分叉了.在他们的分支上,他们创建了一个新的分支"foo"并进行了一些更改.如何将他们的"foo"拉入我的仓库中名为"foo"的新分支?
我知道他们可以向我提交拉动请求,但我想自己启动这个过程.
假设如下:
我有两个项目.一个是"官方"项目,第二个是轻微修改(添加了一些文件).我创建了新分支,并将新文件添加到它们中.但在开发过程中,两个分支共有的一些文件会发生变化.
我如何只提交这些文件?
我一直在主分支上编辑一些模块,但我没有提交它们.我现在认为这些变化应该在实验分支而不是主分支上.
如何将这些编辑内容添加到实验分支中?将它们复制到某个临时位置,创建分支,然后将它们复制回来?
我如何配置东西,以便当我从新的实验分支进行git推送时,它会进入我的GitHub仓库中的同名分支?
有人知道切换和跟踪远程分支这两个命令之间的区别吗?
git checkout -b branch origin/branch
git checkout --track origin/branch
Run Code Online (Sandbox Code Playgroud)
我认为两者都跟踪远程分支,所以我可以将我的更改推送到原点上的分支,对吧?
有什么实际差异吗?
谢谢!
我们有一个网络应用程序,我们几乎每天更新和发布.我们使用git作为我们的VCS,我们当前的分支策略非常简单和破坏:我们有一个主分支,我们检查我们感觉良好的变化.这是有效的,但直到我们检查一个突破性的变化.
有没有人对小型团队有最喜欢的git分支策略,满足以下要求:
理想情况下,我很乐意看到一个开发人员处理新bug的分步过程
我曾经git checkout -b创建一个新的分支.我认为这git branch也是一样的.如果两个命令完全不同,这两个命令有何不同?
在Git中,我理解分支是指向提交的指针.
如何为特定提交创建特定分支?说我想master指出1258f0d0aae...,我该怎么做?
git ×10
git-branch ×10
branch ×3
github ×3
git-checkout ×2
git-commit ×1
git-gui ×1
git-merge ×1
git-pull ×1
git-remote ×1