草庐IT

mro_merge

全部标签

git - 如何撤消 git merge squash?

我刚刚做了一个gitmerge--squashfeature-branch进入我的develop分支。问题是上面的命令在没有创建新提交的情况下更新了头部。我的意图是创建一个单独的提交以应用于develop的负责人。所以简而言之,merge前后develop分支的日志是完全一样的。有没有办法将develop恢复到gitmerge之前的状态?谢谢。解决方案根据DanD.的评论和下面接受的答案,我能够解决我的问题。看看下面我做了什么,以防你在同一条船上:1-我运行了gitreflog,它列出了我对我的develop分支所做的所有提交和checkout。2-我没有按照建议执行gitresetH

Git:将旧提交 merge 到当前头版本

有一个文件有两个感兴趣的提交,都在Master分支上,都只修改一个文件foo:一个先前的提交AA,以及HEAD中的当前版本。我想将文件的两个版本merge到Master上的HEAD中,同时保留两个版本。我做了我认为可行的最简单的事情:gitcheckout-bmerge-purgatoryAAgitcommit-m"pulledfoobackfrompreviouscommitformergingintoHEAD."gitcheckoutmastergitmergemerge-purgatory它只是用AA版本覆盖foo的当前HEAD版本。也尝试了更详细的gitcheckout-m,同

Git:将旧提交 merge 到当前头版本

有一个文件有两个感兴趣的提交,都在Master分支上,都只修改一个文件foo:一个先前的提交AA,以及HEAD中的当前版本。我想将文件的两个版本merge到Master上的HEAD中,同时保留两个版本。我做了我认为可行的最简单的事情:gitcheckout-bmerge-purgatoryAAgitcommit-m"pulledfoobackfrompreviouscommitformergingintoHEAD."gitcheckoutmastergitmergemerge-purgatory它只是用AA版本覆盖foo的当前HEAD版本。也尝试了更详细的gitcheckout-m,同

git - 为什么 git svn dcommit 会丢失本地分支的 merge 提交历史?

我有一个使用gitsvnclone创建的本地git存储库。我创建了一个本地分支,进行了一些更改,然后切换回master,gitsvnrebase如果一切正常,我将我的分支merge回master。然后树看起来像这样:alttexthttp://img.skitch.com/20090108-cjguu3hcci9x2k17mcftamw8f1.jpg有时,稍后当我再次gitsvnrebase并进行一些远程更改时,它会丢失a_branch被merge到主线中的事实,树看起来像这样:alttexthttp://img.skitch.com/20090108-kn3bn1qgi5ijw8ja

git - 为什么 git svn dcommit 会丢失本地分支的 merge 提交历史?

我有一个使用gitsvnclone创建的本地git存储库。我创建了一个本地分支,进行了一些更改,然后切换回master,gitsvnrebase如果一切正常,我将我的分支merge回master。然后树看起来像这样:alttexthttp://img.skitch.com/20090108-cjguu3hcci9x2k17mcftamw8f1.jpg有时,稍后当我再次gitsvnrebase并进行一些远程更改时,它会丢失a_branch被merge到主线中的事实,树看起来像这样:alttexthttp://img.skitch.com/20090108-kn3bn1qgi5ijw8ja

Git 基础 - merge 回 master

我是git的新手。我创建了一个分支,进行了更改,现在我想merge回master以使它们“永久化”。所以我执行了gitmerge1.2报告为已经是最新的,在master上执行了相同的操作得到了相同的结果,并尝试了merge-vHEADmaster这给了我一个稍微不同的最新消息。那么我做的对吗?我应该做点别的吗?如何切换回主分支? 最佳答案 您需要在master分支上才能merge到它。gitcheckoutmastergitmergesome_development_effort 关于G

Git 基础 - merge 回 master

我是git的新手。我创建了一个分支,进行了更改,现在我想merge回master以使它们“永久化”。所以我执行了gitmerge1.2报告为已经是最新的,在master上执行了相同的操作得到了相同的结果,并尝试了merge-vHEADmaster这给了我一个稍微不同的最新消息。那么我做的对吗?我应该做点别的吗?如何切换回主分支? 最佳答案 您需要在master分支上才能merge到它。gitcheckoutmastergitmergesome_development_effort 关于G

git - 在进行手动 merge 后,我是否应该删除提交消息中的冲突列表?

假设我运行gitpull并且存在git无法自动merge的冲突。在我手动merge更改并运行gitcommit之后,我是否应该保留git在提交中生成的Conflicts:部分(作为那些文件被提交的记录)手动merge)或将其删除(因为未提交冲突)?我永远不确定什么是最佳实践-那里的警告是为了确保您修复冲突,还是实际记录在提交消息中? 最佳答案 这似乎是个人意见类型的问题,所以我会回答我的意见[-;我将Conflicts部分单独留下,以提醒您此merge产生了冲突。有时我没有适本地处理冲突,它会在以后产生一些不良影响,所以能够查看提交

git - 在进行手动 merge 后,我是否应该删除提交消息中的冲突列表?

假设我运行gitpull并且存在git无法自动merge的冲突。在我手动merge更改并运行gitcommit之后,我是否应该保留git在提交中生成的Conflicts:部分(作为那些文件被提交的记录)手动merge)或将其删除(因为未提交冲突)?我永远不确定什么是最佳实践-那里的警告是为了确保您修复冲突,还是实际记录在提交消息中? 最佳答案 这似乎是个人意见类型的问题,所以我会回答我的意见[-;我将Conflicts部分单独留下,以提醒您此merge产生了冲突。有时我没有适本地处理冲突,它会在以后产生一些不良影响,所以能够查看提交

git - 为什么 Gerrit 不将 change-id 包含到 merge 提交中?

所以git钩子(Hook)只会将更改Id放入提交中。尽管可以将merge提交推送到审查分支,但即使Gerrit被配置为需要提交消息中的Change-Id。当merge提交被推送时,所有后续提交都将取决于merge提交——因为没有更改ID。那么不将更改Id包含到merge提交中的目的是什么? 最佳答案 Git中的潜在问题是commit-msg钩子(Hook)不会被调用用于没有冲突的merge提交。但是,prepare-commit-msg会为(任何)merge提交调用。因此,我目前为使Gerrit的Change-Id也添加到没有冲突的