草庐IT

mro_merge

全部标签

Git - 如何在所选文件上强制 merge 冲突和手动 merge

我们维护的Web应用程序具有公共(public)主分支和许多并行分支,每个安装一个分支,每个分支几乎没有特定的更改。源代码在git中管理,当我们需要将功能和错误修复从主分支转移到并行分支时,它是一个了不起的工具。但是很少有敏感文件,自动merge通常会产生不好的结果。因此,如果可以以某种方式标记它们,则merge会容易得多,并且每次merge都会导致需要手动merge的冲突。我搜索了一个答案:我正在使用--no-commit和--no-ffmerge选项,但它们并不相同。Here和here有人问同样的问题,但没有解决方案。类似的案例似乎是howtopreventfilebeingmer

git - 显示直接提交到分支的提交,忽略 Git 中的 merge

当使用git时,有没有办法显示对分支所做的提交,同时忽略merge带来的所有提交?我正在尝试审查在一个分支上所做的代码更改,同时忽略我们在merge的其他分支上所做的代码更改。我知道以这种方式显示差异几乎是不可能的,但我想能够找出我需要审查哪些提交。 最佳答案 --不merge在git的许多上下文中,parent双方具有同等的权重。如果您始终坚持merge其他更改,那么您可能会发现这可以满足您的需求。gitlog--no-merges--first-parent否则,您可以排除来自其他命名分支的提交。gitlog--no-merge

git - 显示直接提交到分支的提交,忽略 Git 中的 merge

当使用git时,有没有办法显示对分支所做的提交,同时忽略merge带来的所有提交?我正在尝试审查在一个分支上所做的代码更改,同时忽略我们在merge的其他分支上所做的代码更改。我知道以这种方式显示差异几乎是不可能的,但我想能够找出我需要审查哪些提交。 最佳答案 --不merge在git的许多上下文中,parent双方具有同等的权重。如果您始终坚持merge其他更改,那么您可能会发现这可以满足您的需求。gitlog--no-merges--first-parent否则,您可以排除来自其他命名分支的提交。gitlog--no-merge

git - 如何结束文件 merge ?

在Git中merge文件后,我尝试pull存储库,但出现错误:Youhavenotconcludedyourmerge.(MERGE_HEADexists)如何结束merge? 最佳答案 检查存储库的状态(gitstatus)。每个未merge的文件(在你自己解决冲突后)都应该添加(gitadd),如果没有未merge的文件你应该gitcommit 关于git-如何结束文件merge?,我们在StackOverflow上找到一个类似的问题: https://s

git - 如何结束文件 merge ?

在Git中merge文件后,我尝试pull存储库,但出现错误:Youhavenotconcludedyourmerge.(MERGE_HEADexists)如何结束merge? 最佳答案 检查存储库的状态(gitstatus)。每个未merge的文件(在你自己解决冲突后)都应该添加(gitadd),如果没有未merge的文件你应该gitcommit 关于git-如何结束文件merge?,我们在StackOverflow上找到一个类似的问题: https://s

git - 当我所做的只是压缩提交时,为什么 git-rebase 会给我 merge 冲突?

我们有一个包含400多个提交的Git存储库,其中前几十个是大量反复试验。我们希望通过将许多提交压缩为单个提交来清理这些提交。自然,git-rebase似乎是要走的路。我的问题是它以merge冲突结束,而这些冲突并不容易解决。我不明白为什么应该有任何冲突,因为我只是在压缩提交(而不是删除或重新排列)。很可能,这表明我并不完全理解git-rebase如何进行挤压。这是我正在使用的脚本的修改版本:repo_squash.sh(这是实际运行的脚本):rm-rfrepo_squashgitclonereporepo_squashcdrepo_squash/GIT_EDITOR=../repo_s

git - 当我所做的只是压缩提交时,为什么 git-rebase 会给我 merge 冲突?

我们有一个包含400多个提交的Git存储库,其中前几十个是大量反复试验。我们希望通过将许多提交压缩为单个提交来清理这些提交。自然,git-rebase似乎是要走的路。我的问题是它以merge冲突结束,而这些冲突并不容易解决。我不明白为什么应该有任何冲突,因为我只是在压缩提交(而不是删除或重新排列)。很可能,这表明我并不完全理解git-rebase如何进行挤压。这是我正在使用的脚本的修改版本:repo_squash.sh(这是实际运行的脚本):rm-rfrepo_squashgitclonereporepo_squashcdrepo_squash/GIT_EDITOR=../repo_s

git - 如何在 Git 中获取 merge 提交的父项?

一些Git命令将父级作为修订;其他(例如gitrevert),作为父编号。我怎样才能找到这两种情况的parent?我不想使用图形日志命令,因为这通常需要向下滚动一棵长树才能找到第二个父级。 最佳答案 简单gitlog要求merge提交显示其父项的缩写哈希值:$gitlog-1395f65dcommit395f65d438b13fb1fded88a330dc06c3b0951046Merge:9901923d28790d...git根据他们的编号输出parent:第一个(最左边的)散列是第一个parent,依此类推。如果您只需要哈希值

git - 如何在 Git 中获取 merge 提交的父项?

一些Git命令将父级作为修订;其他(例如gitrevert),作为父编号。我怎样才能找到这两种情况的parent?我不想使用图形日志命令,因为这通常需要向下滚动一棵长树才能找到第二个父级。 最佳答案 简单gitlog要求merge提交显示其父项的缩写哈希值:$gitlog-1395f65dcommit395f65d438b13fb1fded88a330dc06c3b0951046Merge:9901923d28790d...git根据他们的编号输出parent:第一个(最左边的)散列是第一个parent,依此类推。如果您只需要哈希值

git - 你让我 pull 而没有告诉我你想 merge 到哪个分支

TL;DR:我有一个无法pull的“跟踪”分支。所以我在“bucket-4”中:$gitbranch-vbucket-1410f7b5*gh-53*gh-48*"ShareApp"bucket-27ed70a2*upgradetoSOLR3.3.0bucket-3400ffe4*emergencyfixprodissue*bucket-464c2414Mergebranch'bucket-3'intobucket-4master8dc4854[ahead1]*gh-73我想从我的Remote中提取更改:$gitpullYouaskedmetopullwithouttellingmewh