问题标签 [git-patch]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
62 浏览

git - 以合并分辨率格式显示 git diff

有没有办法以合并解析使用的格式格式化 git diff(例如git diff HEAD^或)?git diff origin/foo origin/bar

例如,我有一个(部分)看起来像的补丁

我想把这部分看作

0 投票
1 回答
153 浏览

git - 如何修补新分支

嘿,Corona 危机的原因,我无权访问远程 git 存储库,因为该存储库位于我公司的本地网络上。因此,我们处理存储库的本地副本。现在我的同事创建了一个新分支并向该分支添加了 3 个提交。如何创建此分支并将 3 个提交添加到我的本地存储库?我想为提交制作补丁,但是如何创建一个与我的大学分支相同的新分支?它只是必须是相同的名称还是比这更复杂?一旦这场危机结束,想法是将这些更改推送到远程存储库。

0 投票
0 回答
2030 浏览

git - 在Git中手动编辑大块时,如何避免以下大块的“错误:第X行没有标题的补丁片段”?

我正在运行 Git 版本 2.18.0.windows.1 并尝试手动编辑大块头(这是我第一次搞砸这个)。我开始分裂一个更大的大块,这是两个大块中的第一个。我去编辑第一个大块如下......

老汉子:

尝试编辑:

...但是当我保存并关闭我的文本编辑器(Atom)时,Git 给了我以下错误消息:

错误消息中的行号对应于我的第二个大块的行号,所以我猜测因为我在编辑第一个大块时更改了行号,所以它一定与第二个大块的行号搞砸了。奇怪的是,我正在学习课程,而讲师似乎没有问题。这是我正在运行的 Git 版本中的潜在错误还是我遗漏了什么?

注意:我确保每行前面都有适当的空格/+/-,并在编辑第一个大块时尝试修改行号,但无济于事。

0 投票
0 回答
334 浏览

git - Git diff 补丁在 git apply 失败

我已经使用以下 git 命令生成了补丁

当我应用补丁时,出现以下错误

如果我使用以下 git apply 命令,我可以成功应用补丁

但问题是我们无法将 git apply 命令更改为上述命令,我们使用的是不允许更改 git apply 命令的 Magento 云 PaaS 环境。

在 git diff 中,我提到了忽略空格(-b)和忽略空格(-w),但它不起作用。当我们在 git apply 命令中提到忽略空格和忽略空格时,只有它起作用了。

请帮我解决这个问题。

提前致谢。

0 投票
1 回答
550 浏览

git - 为什么 git apply 并且失败了?

我有一个包含单行更改的补丁文件。运行git am失败并显示以下消息:

目标文件在更改的行上方确实有几行额外的行。这是因为 git 无法确定单行更改的位置而失败吗?如果是这样,这是否意味着目标文件和源文件需要本质上相同?

使用相同的补丁运行git apply会产生以下消息:

我相信这基本上是相同的信息,只是友好(或者,至少,不那么冗长。)

我是否正在尝试一些补丁不适合的东西?即,将更改从一个存储库应用到另一个不具有文件内容等效性的存储库。

我确实找到了这篇文章,但是当使用相同的解决方案时,我得到的只是没有变化和一个简单的.rej文件输出。

0 投票
1 回答
378 浏览

git - Applying git diff contents from a txt file

A programmer friend sent me a txt-file, containing diff information. Like this, from the beginning of the txt-file content:

etc.

How can I apply these changes to git by using command line or source tree? I'm quite new to git and I know you can apply .patch files. Can I convert this content to a patch file or what is the best way to do this? It is just a Java home project.

0 投票
1 回答
152 浏览

git - 使用“git add -p”编辑大块时“错误:...补丁不适用”

tldr:为什么我error: ... patch does not apply在编辑一个大块并删除一行时会得到,即使它看起来应该可以工作?

我正在编辑一个大块git add -p,我只想添加new line 1(而不是添加new line 2):

我将 更改为+空格: new line 2

但这给出了错误:

问题是什么?

0 投票
1 回答
95 浏览

git - 如何从补丁中获取一行的 git 日志?

我使用命令得到一个补丁:

现在我对补丁中特定文件的特定行感兴趣。我想看看这条线的变化历史。我可以像这样使用 git log:

但问题是补丁中的行号与原始文件中的行号不匹配。

有什么方法可以从补丁中获取 git log 行吗?

0 投票
0 回答
1634 浏览

git - 如何在 vscode 中编辑 git add 的补丁?

我尝试git add --patch使用交互式 git add 进行编辑。

所以首先然后git add -i是编辑补丁(我用vscode而不是vim为编辑器设置了我的设置)What for>pe

所以我试图编辑我的补丁(用于分割代码块),我想要的是export type QuestionState = Question & { answer: string[] };从我的提交中排除。(因为我只想提交导出类型的问题)

但是当我删除时export type QuestionState = Question & { answer: string[] };(如编辑器中的以下代码)

并保存并退出编辑器(使用快捷键 cmd+w)。

我收到这样的错误

如何应用编辑补丁?我不知道是什么问题。

0 投票
1 回答
28 浏览

git - 查看完整的 git add 补丁

git add -p一直在使用。对于大块头,我经常进入 (e)dit 模式以根据需要查看和调整大块头。

有没有办法编辑完整的差异(每个文件中的每个大块),而不是一次做出一个大块的分期决策?

我知道您可以(s)将大块分成较小的块。我正在寻找一种相反的东西:将小块合并成一个大块。