- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我正在使用 git-rerere
来实现它的预期目的,随着这些分支的发展,在不创建不必要的 merge 提交的情况下,以增量方式记录两个分支(主分支和主题分支)之间的冲突解决方案。然而,即使在阅读了 git-rerere 联机帮助页之后,我还是有点不清楚 rerere 何时真正记录了我的冲突解决方案。我用于检测和解决新 merge 冲突的标准工作流程是从主题分支执行 git merge master
,解决冲突,然后暂存所有文件并使用 git commit -m 提交 merge “完成测试 merge ”
,然后使用 git reset --hard HEAD^
撤消 merge ,只留下 git-rerere
存储的记录分辨率。
但是,这似乎有点傻。创建提交然后撤消它只是为了记录解决方案?在阅读了 git-rerere
的联机帮助页之后,我仍然不太清楚它何时记录了我的决议。仅暂存冲突文件是否足够,或者我是否真的需要在解决冲突后创建 merge 提交,就像我一直在做的那样?
最佳答案
来自手册页:
Running the git rerere command immediately after a conflicted automerge
records the conflicted working tree files, with the usual conflict
markers <<<<<<<, =======, and >>>>>>> in them. Later, after you are
done resolving the conflicts, running git rerere again will record the
resolved state of these files.
和:
As a convenience measure, git merge automatically invokes git rerere
upon exiting with a failed automerge and git rerere records the hand
resolve when it is a new conflict, or reuses the earlier hand resolve
when it is not. git commit also invokes git rerere when committing a
merge result. What this means is that you do not have to do anything
special yourself (besides enabling the rerere.enabled config variable).
因此您不必提交和撤消提交。您可以不带参数地运行 git rerere
来记录提交。
关于git - 我是否必须提交 merge 以使 git-rerere 记录我的冲突解决方案?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9972540/
是否可以配置 git rerere 使其仅记住特定文件模式并对其应用 merge 解决方案?即:就在模式 pom.xml 上。 最佳答案 这是一个棘手的问题,但我可以想到一个解决方案,该解决方案涉及在
git rerere 愉快地存储我的冲突解决方案,并在相同的冲突再次出现时自动应用它们。 但是,有时我会遇到与不同上下文的 merge 冲突,我不想自动 merge 。 有没有办法让 git rere
好的,我的问题来了。“git rerere”是否比较两个文件的哈希值来找出解决方案?也就是说,假设我有一个包含此标记的 XML 文件: 12 当我遇到冲突时,该数字通常会更改为 13、14 等,所以我
我正在使用 git rerere,它很有用,但有一个问题:当它自动解析一个文件时,它不会将其标记为已解析(例如使用 git add)。因此,如果我运行“git mergetool”,它会打开文件,就好
我见过有人建议所有开发人员在他们的机器上设置一个符号链接(symbolic link),从 C:\project\.git\rr-cache 到共享文件夹 \\server\rr -缓存。 但是,如果
背景 我目前正在解决启用 git rerere 的 merge 冲突。 git status显示一条未 merge 的路径。当我查看文件时,没有 >>>>>> 识别冲突的标记,这告诉我 rerere
据我了解,通过保存冲突解决信息对项目的同步很有用,但我并不完全清楚如何使用和配置它。 我想为我的持续集成 (CI) 环境进行配置。是否推荐这样做? 请不要将另一个问题标记为重复项:Are there
我已经阅读了有关 git 的 rerere 功能的各种信息,并且我正在考虑启用它。 The git rerere functionality is a bit of a hidden feature.
我正在尝试使用共享 rerere 缓存来自动化一次性集成/测试分支。 想法是当分支被推送时 rerere 缓存应该是最新的,这样这些 merge 总是通过。然而,他们没有: >>> git merge
这是交易。 master 有一个文件,file1。我分支,并删除分支中的那个文件。同时,我在 master 上修改 file1。繁荣,冲突。 当我将我的分支 merge 到 master 时,解决方案
Git rerere提供在 rebase 期间重用以前的冲突解决方案,甚至可以通过设置 rerere.autoupdate = True 暂存已解决的文件(详见 another question)。然
我有 2 台笔记本电脑和一个纯文本文件,该文件必须同步 - 它用作第 3 方软件的数据库。客户希望每天同步该文件的内容。 第一个想法是制作一个将文件上传到 Dropbox 的脚本,但在发生冲突的情况下
我正在使用 git-rerere 来实现它的预期目的,随着这些分支的发展,在不创建不必要的 merge 提交的情况下,以增量方式记录两个分支(主分支和主题分支)之间的冲突解决方案。然而,即使在阅读了
像大多数刚接触 Git 的人一样,我在尝试破译适用于 git merge 和 git rebase 的用例时也有过困惑。我想我终于决定,就生成的工作副本状态而言,它们给你的是同样的东西。而且,它们都会
好吧,所以我真的很喜欢 git rerere 命令,尽管除了让它自动神奇地记录我的冲突并为我解决它们之外,我并没有真正使用过它。但是,在相当大的 rebase 期间,我确实弄乱了我的一个冲突解决方案(
我是一名优秀的程序员,十分优秀!