如何将一个文件的差异内容移动到另一个文件(在 git 中)?
How do I move diff contents of one file to another (in git)?
我在 git 中合并到 master 时遇到问题。
我在本地分支 (old.file) 中处理的文件已在 master 中移动并重命名(至 new.file)。
将 master 合并到我的分支后,我现在有了新文件并对旧文件进行了工作更改。
如何将 old.file 的更改内容移动到 new.file?
我只想将 old.file 的 20 多行更改行移动到 new.file 中,然后删除 old.file.
商店diff/patch
您将需要 patch/diff 您想要做什么。您可以通过多种方式执行此操作,但我发现最简单的方法是 following:
git diff <some SHAid or HEAD^ or etc...> -- old.file > changes.diff
修改差异
现在我们要更改差异,以便它可以应用于 new.file
改变
---a/old.file
+++b/old.file
到
---a/new.file
+++b/new.file
应用差异
现在补丁将指向正确的文件
git apply changes.diff
清理(可选)
请务必从存储库(和本地文件)中删除 old.file,因为它可能不再需要。
git rm old.file
我在 git 中合并到 master 时遇到问题。 我在本地分支 (old.file) 中处理的文件已在 master 中移动并重命名(至 new.file)。 将 master 合并到我的分支后,我现在有了新文件并对旧文件进行了工作更改。
如何将 old.file 的更改内容移动到 new.file? 我只想将 old.file 的 20 多行更改行移动到 new.file 中,然后删除 old.file.
商店diff/patch
您将需要 patch/diff 您想要做什么。您可以通过多种方式执行此操作,但我发现最简单的方法是 following:
git diff <some SHAid or HEAD^ or etc...> -- old.file > changes.diff
修改差异
现在我们要更改差异,以便它可以应用于 new.file
改变
---a/old.file
+++b/old.file
到
---a/new.file
+++b/new.file
应用差异
现在补丁将指向正确的文件
git apply changes.diff
清理(可选)
请务必从存储库(和本地文件)中删除 old.file,因为它可能不再需要。
git rm old.file