summaryrefslogtreecommitdiff
path: root/.gitattributes
diff options
context:
space:
mode:
authoryoav-steinberg <yoav@monfort.co.il>2022-01-25 12:24:06 +0200
committerGitHub <noreply@github.com>2022-01-25 12:24:06 +0200
commitd26453a3f8d875ffd7c0546d9795715e71d81e9e (patch)
treecb3c3170c5bd62f2d6f17b5425c8d37e7ed90aa1 /.gitattributes
parentac011ebd7f86431874a7537d94926b1aff937f2f (diff)
downloadredis-d26453a3f8d875ffd7c0546d9795715e71d81e9e.tar.gz
Fix commands.c build issue on merge (#10172)
Set commands.c's merge driver to binary so when it conflicts during a merge git will leave the local version unmodified. This way our Makefile will rebuild it based on src/commands/*.json before trying to compile it. Otherwise the file gets modified with merge conflict markers and gets the same timestamp as the *.json files, so the Makefile doesn't attempt to rebuild it before compiling and we get a compilation error.
Diffstat (limited to '.gitattributes')
-rw-r--r--.gitattributes6
1 files changed, 6 insertions, 0 deletions
diff --git a/.gitattributes b/.gitattributes
new file mode 100644
index 000000000..697a900cf
--- /dev/null
+++ b/.gitattributes
@@ -0,0 +1,6 @@
+# We set commands.c's merge driver to `binary` so when it conflicts during a
+# merge git will leave the local version unmodified. This way our Makefile
+# will rebuild it based on src/commands/*.json before trying to compile it.
+# Otherwise the file gets modified and gets the same timestamp as the .json
+# files. So the Makefile doesn't attempt to rebuild it before compiling.
+src/commands.c merge=binary