gpt4 book ai didi

git - 将存储转换为由 #ifdef SYM 分隔的工作更改

转载 作者:太空狗 更新时间:2023-10-29 13:23:20 25 4
gpt4 key购买 nike

我在 stash@{4} 中有一组更改,我想应用这些更改,但这些更改会 merge 到工作副本(或新提交)中这样可以通过预处理器符号选择任一版本。

(这是 GNU diff 和 diff3 程序的一个特性:参见 --ifdef 选项。)

比如像个大块头

@@ -123,7 +123,7 @@
a
b
c
-foo
+bar
d
e
f

实际上应用于工作文件为

a
b
c
#ifdef SYM
bar
#else
foo
#endif
d
e
f

如果定义了 SYM,则文本对应于补丁版本,而如果未定义,则文本扩展为基础版本。

也许这可以通过 git merge 来完成,以某种方式告诉 git 使用 diff3 --ifdef=SYM 进行 merge ?

最佳答案

显而易见的是让我印象深刻:patch 也有一个 --ifdef/-D 选项。

git stash show -p stash@{4} | patch -p1 -D SYMBOL

完成!

关于git - 将存储转换为由 #ifdef SYM 分隔的工作更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23761840/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com