如何合并在GIT中修改的文件

我是Git版本控制工具的新手。 以前我使用SVN。

如果我们有一个文件a.php,它对第50行的行号有一些修改,并且对于已经提交的同一个文件,另一个分支的第500行号码发生了变化。 我们如何合并这两个分支而不隐藏更改或使用git checkout --patch?

在SVN中,我们只是用来执行一个命令'svn update a.php'。 而在这里,我们将不得不执行三个命令。 git存储,git merge branchname,git存储适用。

提前致谢。


在Git中,你总是在合并之前提交。 这个想法是在合并时从不在工作区中有任何修改过的文件。 这是SVN的主要特性之一:在Subversion中,未提交的更改将与其他人的工作合并。 其结果有时是不可预测的。 最可预测的事情是,解决svn update遗留的混乱问题总是很多工作。

在Git中,一个分支非常非常便宜。 实际上这很便宜,当你创建一个时,你几乎不会注意到它。

所以你总是承诺一切。 然后你说“我想和那个提交合并”(通常通过给Git提供包含提交的分支名称)。

出了什么问题? 没问题,Git可以在不失败的情况下恢复以前的状态(不像Subversion),因为之前的状态已经被提交到版本库。

现在有人认为线性历史非常有价值,他们认为他们必须牺牲这个功能。 这通常不是真实的,或者导致解决更多的问题。 当你开始使用Git时特别危险。 rebase是一项复杂且有时危险的操作,不适合初学者。

这就是为什么我建议从一个简单的工作流程开始:

  • 提交你的工作。
  • 拉(将自动合并)
  • 如果出现问题:撤销(见下文)
  • 运行你的测试
  • 当一切看起来不错时,推动
  • 有关:

  • 撤消git拉,如何将回购旧状态
  • 撤消尚未推送的Git合并

  • 如果您目前在一个分支上提交了对第50行进行更改的提交,并且您有一个并行分支,并提交了对第500行进行更改的提交,并且您想合并这两个分支,则可以运行git merge <parallel branch> 。 这有效地将并行分支合并到当前分支中。

    由于2个提交中的更改位于文件中的单独行中,因此合并将由Git自动完成,不会发生任何冲突。

    链接地址: http://www.djcxy.com/p/94789.html

    上一篇: How to merge files which are modified in GIT

    下一篇: git commands as hg commands