相关疑难解决方法(0)

如何在Git中合并特定的提交

我从GitHub中的一个存储库中分叉了一个分支,并为我提交了一些特定的东西.现在我发现原始存储库有一个很好的功能HEAD.

我想在没有事先提交的情况下合并它.我该怎么办?我知道如何合并所有提交:

git branch -b a-good-feature
git pull repository master
git checkout master
git merge a-good-feature
git commit -a
git push
Run Code Online (Sandbox Code Playgroud)

git merge

964
推荐指数
9
解决办法
69万
查看次数

Git工作流程和rebase与合并问题

我和其他开发人员一起在一个项目上使用Git几个月了.我有几年的SVN经验,所以我想我给这段关系带来了很多包袱.

我听说Git非常适合分支和合并,到目前为止,我只是没有看到它.当然,分支很简单,但是当我尝试合并时,一切都变得很糟糕.现在,我已经习惯了SVN,但在我看来,我只是将一个低于标准的版本系统换成了另一个.

我的搭档告诉我,我的问题源于我不顾一切地合并,并且我应该在很多情况下使用rebase而不是合并.例如,这是他所规定的工作流程:

clone the remote repository
git checkout -b my_new_feature
..work and commit some stuff
git rebase master
..work and commit some stuff
git rebase master
..finish the feature
git checkout master
git merge my_new_feature
Run Code Online (Sandbox Code Playgroud)

基本上,创建一个功能分支,始终从主分支到分支,并从分支合并回主分支.需要注意的重要一点是,分支始终保持在本地.

这是我开始的工作流程

clone remote repository
create my_new_feature branch on remote repository
git checkout -b --track my_new_feature origin/my_new_feature
..work, commit, push to origin/my_new_feature
git merge master (to get some changes that my partner added)
..work, commit, push to origin/my_new_feature
git merge master
..finish …
Run Code Online (Sandbox Code Playgroud)

git version-control git-merge git-rebase

949
推荐指数
10
解决办法
20万
查看次数

git branch,fork,fetch,merge,rebase和clone,有什么区别?

有人可以帮我理解Git中分支,分支和克隆之间的区别吗?

同样,当我做一个git fetch而不是一个时,它意味着什么git pull

另外,rebase与之相比,意味着什么merge呢?

我怎样才能将各个提交自己压缩在一起?

他们是如何使用的,为什么使用它们以及它们代表什么?

GitHub如何计算?

git branch clone git-clone gitx

495
推荐指数
5
解决办法
16万
查看次数

476
推荐指数
9
解决办法
16万
查看次数

合并后提交时发生Git错误 - 致命:在合并期间无法执行部分提交

我跑了git pull一场冲突结束了.我解决了冲突,现在一切都很好(我也使用了mergetool).

当我提交已解析的文件时,git commit file.php -m "message"我收到错误:

fatal: cannot do a partial commit during a merge.
Run Code Online (Sandbox Code Playgroud)

之前我遇到了同样的问题,并且-a在提交中使用完美.我认为这不是完美的方式,因为我不想做出所有改变.我想分别使用单独的注释提交文件.我怎样才能做到这一点?为什么git不允许用户在合并后单独提交文件?我找不到这个问题的满意答案.

git commit

272
推荐指数
13
解决办法
25万
查看次数

Git分支策略与测试/ QA流程集成在一起

我们的开发团队一直在使用GitFlow分支策略,它一直很棒!

最近我们招募了一些测试人员来提高我们的软件质量.这个想法是每个功能都应该由测试人员测试/ QA.

过去,开发人员在单独的功能分支上处理功能,并develop在完成后将它们合并回分支.开发人员将在该feature分支上自行测试他的工作.现在有了测试人员,我们开始问这个问题

测试人员应该在哪个分支上测试新功能?

显然,有两种选择:

  • 在个别功能分支上
  • develop树枝上

测试开发分支

最初,我们相信这是肯定的方法,因为:

  • develop自开发开始以来,该功能已与所有其他功能合并到分支进行测试.
  • 任何冲突都可以在以后检测到
  • 它使测试人员的工作变得轻松,他只是在处理一个分支(develop).他不需要向开发人员询问哪个分支是针对哪个功能的(功能分支是由相关开发人员独立管理的个人分支)

最大的问题是:

  • develop分支被污染与臭虫.

    当测试人员发现错误或冲突时,他会将它们报告给开发人员,开发人员会在开发分支上修复问题(功能分支在合并后被放弃),之后可能需要更多修复.多个子序列提交或合并(如果develop再次在分支上重新创建分支以修复错误),develop如果可能的话,从分支回滚功能非常困难.develop在不同时间有多个功能合并到分支并在其上固定.当我们想要创建仅包含develop分支中某些功能的版本时,这会产生一个大问题

功能分支测试

所以我们再次思考并决定我们应该在功能分支上测试功能.在我们测试之前,我们将更改从develop分支合并到功能分支(赶上develop分支).这很好:

  • 您仍然可以使用主流中的其他功能测试该功能
  • 进一步的开发(例如错误修复,解决冲突)不会污染develop分支;
  • 在完全测试和批准之前,您可以轻松决定不发布该功能;

但是,存在一些缺点

  • 测试人员必须合并代码,如果有任何冲突(非常可能),他必须向开发人员寻求帮助.我们的测试人员专门从事测试,无法编码.
  • 可以在不存在其他新功能的情况下测试功能.例如,特征A和B同时都在测试中,这两个特征彼此不知道,因为它们都没有合并到develop分支.这意味着,develop无论如何,当两个功能都合并到开发分支时,您将不得不再次测试分支.你必须记得将来测试这个.
  • 如果功能A和B都经过测试和批准,但在合并时发现冲突,两个功能的开发人员都认为这不是他自己的错误/工作,因为他的功能分支超过了测试.沟通会产生额外的开销,有时解决冲突的人会感到沮丧.

以上是我们的故事.由于资源有限,我想避免在所有地方进行测试.我们仍在寻找更好的方法来应对这种情况.我很想知道其他团队如何应对这种情况.

git testing qa git-flow

120
推荐指数
4
解决办法
3万
查看次数

Git Pull vs Git Rebase

我是Git中的菜鸟,并试图了解git pullvs 之间的区别git rebase.有人可以提供一个示例何时使用哪个选项,因为我觉得两者都有相同的用途.

git

91
推荐指数
3
解决办法
7万
查看次数

Git:从另一个分支获取更改

我在git下有一个项目.我想开始一个新的分支来添加一个主要的新功能.在主分支下,我将继续添加错误修复和次要功能.我定期将主要分支的变化拉到我的"主要新功能"分支.最好的方法是什么?最终,我将"主要新功能"分支合并到主分支中.

git

80
推荐指数
2
解决办法
9万
查看次数

Android Studio更新项目:Merge vs Rebase vs Branch Default

抱歉,如果这看起来多余,因为我知道有很多关于Merge和Rebase的问题,但似乎也没有任何关于'Branch Default'的问题.

您将获得一个案例,您可以同时处理多个人(即Android Studio中的Android应用程序).如果有人推送到主分支并且您想要引入新主服务器以便它不会覆盖您仍在处理并且尚未提交并推送到主服务器的工作,那么更新项目/拉动的最佳选项是什么?单击"更新项目"时,Android Studio会列出"合并""重新生成"和"分支默认".听起来,我想做'Rebase'(接着'合并'?),但我不完全确定.

git android git-merge android-studio

59
推荐指数
3
解决办法
5万
查看次数

描述使用版本控制(VCS或DVCS)的工作流程

我想在使用vcs或dvcs时学习其他人的工作流程.

请描述您处理以下任务的策略:

  • 实现功能
  • 修复错误(在开发和部署应用程序期间)
  • 代码审查
  • 重构代码(后代码审查)
  • 合并补丁
  • 发布新版本的应用程序(桌面,网络,移动设备,您会以不同的方式对待它们吗?)

您可以随意组织您的答案,不按任务分组,但按照您认为相关的任何分组,但请通过VCS/DVCS进行组织(请不要混用它们).

谢谢.

svn git mercurial dvcs

51
推荐指数
2
解决办法
6346
查看次数