From 2dffbec4866fef00e3b438472dd79ca7fca56263 Mon Sep 17 00:00:00 2001 From: Todd Gamblin Date: Mon, 2 Dec 2019 01:35:38 -0800 Subject: [PATCH] git: add .gitattributes file (#13947) Add a line to .gitattributes so that `git grep -p` shows function names properly for `*.py` files. Without this, the class name is shown instead of the function for python files. This also causes diff output to use proper functions as hunk headers in `diff` output. Here's an example with `git grep -p`. Before: $ git grep -p spack_cc var/spack/repos/builtin/packages/athena var/spack/repos/builtin/packages/athena/package.py=class Athena(AutotoolsPackage): var/spack/repos/builtin/packages/athena/package.py: env.set('CC', spack_cc) var/spack/repos/builtin/packages/athena/package.py: env.set('LDR', spack_cc) After: $ git grep -p spack_cc var/spack/repos/builtin/packages/athena var/spack/repos/builtin/packages/athena/package.py= def setup_build_environment(self, env): var/spack/repos/builtin/packages/athena/package.py: env.set('CC', spack_cc) var/spack/repos/builtin/packages/athena/package.py: env.set('LDR', spack_cc) Here's an example with `diff`. Before: $ git show c5da94eb585d503248234ce18f24ffff4bd1f47c [...] @@ -28,6 +29,7 @@ print(u'\\xc3') # make it executable fs.set_executable(script_name) + filter_shebangs_in_directory('.', [script_name]) # read the unicode back in and see whether things work script = ex.Executable('./%s' % script_name) After: $ git show c5da94eb585d503248234ce18f24ffff4bd1f47c [...] @@ -28,6 +29,7 @@ def test_read_unicode(tmpdir): # make it executable fs.set_executable(script_name) + filter_shebangs_in_directory('.', [script_name]) # read the unicode back in and see whether things work script = ex.Executable('./%s' % script_name) --- .gitattributes | 1 + 1 file changed, 1 insertion(+) create mode 100644 .gitattributes diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000000..95105a3731 --- /dev/null +++ b/.gitattributes @@ -0,0 +1 @@ +*.py diff=python