草庐IT

rebase-merge

全部标签

git - 通过 git rebase --interactive 编辑提交时如何保留提交消息?

我目前正在gitrebase--interactivesession中编辑提交。我正在按照HowcanIsplitupaGitcommitburiedinhistory?的建议进行操作即我运行gitresetHEAD^并进行了修改。现在我希望rebase继续,这需要我提交我的更改。我想修改我的旧提交消息,但问题是,如果我运行gitcommit--amend,我会得到before提交的提交消息我实际上正在修改的那个——我当然不想将我的更改merge到那个提交中。那么我该如何检索我现在正在处理的提交的旧提交消息呢? 最佳答案 同时Cha

Git:目前与私有(private)远程仓库 merge/冲突。如何告诉 Git 只使用我的本地文件?

尝试在个人项目中使用/学习git。只有我和一个远程git存储库,一些提交,我陷入了失败的merge。我的很多文件现在也有Gitmerge冲突标记。我如何告诉git把所有东西都扔掉,只用我的?我如何进入我所处状态的具体示例:echoAnewfile>myFile.txt#examplefilegitaddmyFile.txt#addfilegitcommit#commitchangesgitpush#pushchangestoremoterepoechoAconflictingedit>myFile.txt#oh,no,forgotsomechangesgitaddmyFile.txt#

svn - git svn rebase : Incomplete data: Delta source ended unexpectedly

我一直在维护thegitmirror的thewatirproject.几周前的某个时候,有人准备提交他们的第一个基于git的补丁。不幸的是,由于该项目的多平台性质,我们遇到了一些关于行尾(CRLF与LF等)的问题。我尽我所能设置theautocrlfoption(“输入”),并进行一些--hard重置。然而,几天后,每日更新(gitsvnrebase)出现了这个错误:Incompletedata:Deltasourceendedunexpectedly我试过用谷歌搜索要做什么,但即使删除.git/config中的autocrlf设置也无济于事。我担心工作副本已损坏,但我希望它不是不可恢

git - "cannot pull into a repository with state: merging_resolved"

经过一些pull、merge和冲突解决后,我的GIT卡住了。这是我在主项目上尝试做的(使用EGit):“pull”返回“无法pull入状态为:merging_resolved的存储库”“从上游获取”返回“没有从GeniusWebSocket获取的引用-来源-一切都是最新的。”“merge”在菜单中是灰色的。“提交”返回“不可能提交/修改...”。“向上游推送”返回“已拒绝-非快进”。“添加到索引”什么都不做。在项目标题附近,我看到[Mergedmasterup-arrow1down-arrow1]。$gitstatus#Onbranchmaster#Yourbranchand'orig

git bisect 说平分 : a merge base must be tested

我做了一个gitbisect并得到了结果Bisecting:amergebasemustbetested[bbdaf1111eea5365c0c94d6045d6263aab718925]Fixdisplaybugwithmain-stage我该如何继续? 最佳答案 如果给定的好版本和坏版本不是彼此的直接后代,就会发生这种情况。让我们假设一个这样的存储库(使用示例性的提交名称):*dffa2good-commit*b38f4a2*cc19fa1|*d1f17bad-commit|*fbd1fb2|*f66ccb1|/*09f66me

git-merge 与本地文件系统上的存储库

对于某些上下文:我刚刚升级了Ubuntu,这破坏了我现有的gitosis安装(参见此处:bug#368895),并且刚刚从软件包中重新安装了gitosis。我现在想从旧的gitosis安装中迁移我的整个配置和存储库集(它仍然存在并且可以从中pull出但已损坏)。我现在在本地有两个gitosis-admin目录,每个gitosis安装一个。一个有完整的历史,另一个是空的。我想回顾这段历史。这是正在发生的事情:me@server:~/gitosis-admin-new$gitmerge../gitosis-admin-old/fatal:'../gitosis-admin-old/'doe

svn - dvcs (git/mercurial) 分支和 merge 支持比 svn 更好吗?

许多关于dvcs系统的文章声称卓越的分支和merge支持是从svn迁移到dvcs系统的一个原因。这些系统究竟如何以不同的方式进行分支和merge以使其变得更好? 最佳答案 从历史上看,git和svn中merge跟踪的区别是:git有merge跟踪,而在1.5版本之前,svn没有。完全没有。如果您想进行merge,则必须始终准确指定要merge的更改,并且如果您将一个分支多次merge到另一个分支,则必须手动跟踪哪些修订已merge,哪些未merge,并仅手动选择尚未merge的更改,以避免冲突。如果您挑选了任何更改,祝您好运。从1.

GIT fatal error : refusing to merge unrelated histories

$gitpulloriginmasterFromhttps://bitbucket.org/tecgenome/chl-v2.0-html*branchmaster->FETCH_HEADfatal:refusingtomergeunrelatedhistories如何避免或克服该错误消息? 最佳答案 SinceGit2.9(April2016),你可以试试:gitpull--allow-unrelated-historiesoriginmaster但是请检查为什么这些分支不再常见。可能有一个强推重写所有origin/master的

git - 在实际 merge 之前查看 git-merge 的结果

有没有办法在实际merge之前检查两个分支之间的merge结果?当尝试将分支Amerge到分支B时,我通常会从Bcheckout一个临时分支,将其与分支Amerge,然后我会创建一个diff补丁,或者只是checkout到该临时分支并检查是否一切正常在将Amerge到B之前很好。git是否提供可以完成此操作的命令或功能? 最佳答案 正如MarianTheisen所建议的,您可以在不提交的情况下执行mergegitmerge--no-commit您可以退出mergegitreset--hard此外,请记住,在Git中改变主意并返回到以

git - 使用 git rebase 时自动跳过空提交

通常,您必须执行gitrebase--skip,如果有一个开关可以自动跳过这些空提交,那就太好了。有人知道怎么做吗? 最佳答案 非常古老的话题,但对我来说是搜索引擎上的第一个结果。我终于发现有一个--empty参数可以取以下值之一:keep、drop和ask。文档链接:https://git-scm.com/docs/git-rebase#Documentation/git-rebase.txt---emptydropkeepask所以你现在可以简单地做gitrebase...--empty=drop