相关疑难解决方法(0)

Mercurial和Git有什么区别?

我一直在Windows上使用git一段时间(使用msysGit),我喜欢分布式源代码控制的想法.就在最近,我一直在关注Mercurial(hg),它看起来很有趣.但是,我无法解决hg和git之间的差异.

有没有人在git和hg之间进行并列比较?我很想知道hg和git的不同之处,而不必参加讨论.

git version-control comparison mercurial dvcs

727
推荐指数
16
解决办法
59万
查看次数

如何正确使用git和分支

我对GIT的版本控制有点新意.我阅读本指南并遵循此处图中显示的基本方法.不过,我对如何使用git分支将新功能的开发与现有代码分开存在疑问.

这是一个例子.假设在开始时,我的存储库包含以下两个主要分支:

  • 主分支(包含发布版本)
  • 开发分支(包含新的修复或功能以将它们与现有项目功能分开)

当我需要开发新的功能或模块时,我从Develop创建分支并在那里启动新的代码项目.例如,我做了三个新的分支,以增加相关的功能Sun,Star以及SuperNova.现在,我的存储库包含五个分支:

  • 主分支:发布1.0.0
  • 开发分支:1.0.0版后的修改
  • NewModule_Sun分支:将Sun添加到项目中(从Develop分支创建)
  • NewModule_Star分支:将Star添加到项目中(从Develop分支创建)
  • NewModule_SuperNova分支:将SuperNova添加到Project(从Develop分支创建)

对于1.0.1版,我想包含SunStar模块,但不是SuperNova.所以,我将它们与Develop合并,然后将Develop与Release合并:

  1. 将NewModule_Sun合并到Develop中
  2. 将NewModule_Star合并为Develop
  3. 合并开发成硕士(1.0.1版)

develop分支需要被永久保存,但SunStar分支机构不再需要.他们被删除:

  1. 删除NewModule_Sun分支
  2. 删除NewModule_Star分支

完成这些更改后,我的存储库包含以下三个分支:

  • Master Branch:1.0.1版
  • 开发分支:1.0.1发布后的修改
  • NewModule_SuperNova分支:1.0.0版本之后的修改(从未与Star/Sun分支合并时的Develop创建)

==

首先,我正确使用git分支吗?

其次,我回顾了最终开发分支的历史,似乎我已经丢失了一些关于NewModules.这是正常的吗?并且,是否可以将所有历史信息传输到Develop分支?

谢谢!!

git version-control branch

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

标签 统计

git ×2

version-control ×2

branch ×1

comparison ×1

dvcs ×1

mercurial ×1