threads / patch / 44731

patchgit-p4: add diff/merge properties to .gitattributes for GitLFS files

Subject: [PATCH v1] git-p4: add diff/merge properties to .gitattributes for GitLFS files

## tl;dr

3 messages between Dec 18, 2016 and Dec 20, 2016. Diffs are folded; open one to read it.

replies: 2people: 3as markdown or json

larsxschneider@gmail.com· Dec 18, 2016, 19:01 UTC · lore
From: Lars Schneider <larsxschneider@gmail.com>

The `git lfs track` command generates a .gitattributes file with diff and merge properties [1]. Set the same .gitattributes format for files tracked with GitLFS in git-p4.

[1] https://github.com/git-lfs/git-lfs/blob/v1.5.3/commands/command_track.go#L121
Signed-off-by: Lars Schneider <larsxschneider@gmail.com>
---
Notes:
    Base Commit: d1271bddd4 (v2.11.0)
    Diff on Web: https://github.com/git/git/compare/d1271bddd4...larsxschneider:e045b3d5c8
    Checkout:    git fetch https://github.com/larsxschneider/git git-p4/fix-lfs-attributes-v1 && git checkout e045b3d5c8
 git-p4.py                 |  4 ++--
 t/t9824-git-p4-git-lfs.sh | 24 ++++++++++++------------
 2 files changed, 14 insertions(+), 14 deletions(-)
Show changes to 2 files +14 −14

git-p4.py, t/t9824-git-p4-git-lfs.sh

diff --git a/git-p4.py b/git-p4.py
index fd5ca52462..87b6932c81 100755
--- a/git-p4.py
+++ b/git-p4.py
@@ -1098,10 +1098,10 @@ class GitLFS(LargeFileSystem):
                 '# Git LFS (see https://git-lfs.github.com/)\n',
                 '#\n',
             ] +
-            ['*.' + f.replace(' ', '[[:space:]]') + ' filter=lfs -text\n'
+            ['*.' + f.replace(' ', '[[:space:]]') + ' filter=lfs diff=lfs merge=lfs -text\n'
                 for f in sorted(gitConfigList('git-p4.largeFileExtensions'))
             ] +
-            ['/' + f.replace(' ', '[[:space:]]') + ' filter=lfs -text\n'
+            ['/' + f.replace(' ', '[[:space:]]') + ' filter=lfs diff=lfs merge=lfs -text\n'
                 for f in sorted(self.largeFiles) if not self.hasLargeFileExtension(f)
             ]
         )
diff --git a/t/t9824-git-p4-git-lfs.sh b/t/t9824-git-p4-git-lfs.sh
index 110a7e7924..1379db6357 100755
--- a/t/t9824-git-p4-git-lfs.sh
+++ b/t/t9824-git-p4-git-lfs.sh
@@ -81,9 +81,9 @@ test_expect_success 'Store files in LFS based on size (>24 bytes)' '
 		#
 		# Git LFS (see https://git-lfs.github.com/)
 		#
-		/file2.dat filter=lfs -text
-		/file4.bin filter=lfs -text
-		/path[[:space:]]with[[:space:]]spaces/file3.bin filter=lfs -text
+		/file2.dat filter=lfs diff=lfs merge=lfs -text
+		/file4.bin filter=lfs diff=lfs merge=lfs -text
+		/path[[:space:]]with[[:space:]]spaces/file3.bin filter=lfs diff=lfs merge=lfs -text
 		EOF
 		test_path_is_file .gitattributes &&
 		test_cmp expect .gitattributes
@@ -109,7 +109,7 @@ test_expect_success 'Store files in LFS based on size (>25 bytes)' '
 		#
 		# Git LFS (see https://git-lfs.github.com/)
 		#
-		/file4.bin filter=lfs -text
+		/file4.bin filter=lfs diff=lfs merge=lfs -text
 		EOF
 		test_path_is_file .gitattributes &&
 		test_cmp expect .gitattributes
@@ -135,7 +135,7 @@ test_expect_success 'Store files in LFS based on extension (dat)' '
 		#
 		# Git LFS (see https://git-lfs.github.com/)
 		#
-		*.dat filter=lfs -text
+		*.dat filter=lfs diff=lfs merge=lfs -text
 		EOF
 		test_path_is_file .gitattributes &&
 		test_cmp expect .gitattributes
@@ -163,8 +163,8 @@ test_expect_success 'Store files in LFS based on size (>25 bytes) and extension
 		#
 		# Git LFS (see https://git-lfs.github.com/)
 		#
-		*.dat filter=lfs -text
-		/file4.bin filter=lfs -text
+		*.dat filter=lfs diff=lfs merge=lfs -text
+		/file4.bin filter=lfs diff=lfs merge=lfs -text
 		EOF
 		test_path_is_file .gitattributes &&
 		test_cmp expect .gitattributes
@@ -199,8 +199,8 @@ test_expect_success 'Remove file from repo and store files in LFS based on size
 		#
 		# Git LFS (see https://git-lfs.github.com/)
 		#
-		/file2.dat filter=lfs -text
-		/path[[:space:]]with[[:space:]]spaces/file3.bin filter=lfs -text
+		/file2.dat filter=lfs diff=lfs merge=lfs -text
+		/path[[:space:]]with[[:space:]]spaces/file3.bin filter=lfs diff=lfs merge=lfs -text
 		EOF
 		test_path_is_file .gitattributes &&
 		test_cmp expect .gitattributes
@@ -237,8 +237,8 @@ test_expect_success 'Add .gitattributes and store files in LFS based on size (>2
 		#
 		# Git LFS (see https://git-lfs.github.com/)
 		#
-		/file2.dat filter=lfs -text
-		/path[[:space:]]with[[:space:]]spaces/file3.bin filter=lfs -text
+		/file2.dat filter=lfs diff=lfs merge=lfs -text
+		/path[[:space:]]with[[:space:]]spaces/file3.bin filter=lfs diff=lfs merge=lfs -text
 		EOF
 		test_path_is_file .gitattributes &&
 		test_cmp expect .gitattributes
@@ -278,7 +278,7 @@ test_expect_success 'Add big files to repo and store files in LFS based on compr
 		#
 		# Git LFS (see https://git-lfs.github.com/)
 		#
-		/file6.bin filter=lfs -text
+		/file6.bin filter=lfs diff=lfs merge=lfs -text
 		EOF
 		test_path_is_file .gitattributes &&
 		test_cmp expect .gitattributes
-- 
2.11.0
Junio C Hamano· Dec 19, 2016, 21:29 UTC · re: larsxschneider@gmail.com · lore

Re: [PATCH v1] git-p4: add diff/merge properties to .gitattributes for GitLFS files

larsxschneider@gmail.com writes:
Show 10 quoted lines
> From: Lars Schneider <larsxschneider@gmail.com>
>
> The `git lfs track` command generates a .gitattributes file with diff
> and merge properties [1]. Set the same .gitattributes format for files
> tracked with GitLFS in git-p4.
>
> [1] https://github.com/git-lfs/git-lfs/blob/v1.5.3/commands/command_track.go#L121
>
> Signed-off-by: Lars Schneider <larsxschneider@gmail.com>
> ---
Thanks.  Luke, does this look ok?
Show 104 quoted lines
>
> Notes:
>     Base Commit: d1271bddd4 (v2.11.0)
>     Diff on Web: https://github.com/git/git/compare/d1271bddd4...larsxschneider:e045b3d5c8
>     Checkout:    git fetch https://github.com/larsxschneider/git git-p4/fix-lfs-attributes-v1 && git checkout e045b3d5c8
>
>  git-p4.py                 |  4 ++--
>  t/t9824-git-p4-git-lfs.sh | 24 ++++++++++++------------
>  2 files changed, 14 insertions(+), 14 deletions(-)
>
> diff --git a/git-p4.py b/git-p4.py
> index fd5ca52462..87b6932c81 100755
> --- a/git-p4.py
> +++ b/git-p4.py
> @@ -1098,10 +1098,10 @@ class GitLFS(LargeFileSystem):
>                  '# Git LFS (see https://git-lfs.github.com/)\n',
>                  '#\n',
>              ] +
> -            ['*.' + f.replace(' ', '[[:space:]]') + ' filter=lfs -text\n'
> +            ['*.' + f.replace(' ', '[[:space:]]') + ' filter=lfs diff=lfs merge=lfs -text\n'
>                  for f in sorted(gitConfigList('git-p4.largeFileExtensions'))
>              ] +
> -            ['/' + f.replace(' ', '[[:space:]]') + ' filter=lfs -text\n'
> +            ['/' + f.replace(' ', '[[:space:]]') + ' filter=lfs diff=lfs merge=lfs -text\n'
>                  for f in sorted(self.largeFiles) if not self.hasLargeFileExtension(f)
>              ]
>          )
> diff --git a/t/t9824-git-p4-git-lfs.sh b/t/t9824-git-p4-git-lfs.sh
> index 110a7e7924..1379db6357 100755
> --- a/t/t9824-git-p4-git-lfs.sh
> +++ b/t/t9824-git-p4-git-lfs.sh
> @@ -81,9 +81,9 @@ test_expect_success 'Store files in LFS based on size (>24 bytes)' '
>  		#
>  		# Git LFS (see https://git-lfs.github.com/)
>  		#
> -		/file2.dat filter=lfs -text
> -		/file4.bin filter=lfs -text
> -		/path[[:space:]]with[[:space:]]spaces/file3.bin filter=lfs -text
> +		/file2.dat filter=lfs diff=lfs merge=lfs -text
> +		/file4.bin filter=lfs diff=lfs merge=lfs -text
> +		/path[[:space:]]with[[:space:]]spaces/file3.bin filter=lfs diff=lfs merge=lfs -text
>  		EOF
>  		test_path_is_file .gitattributes &&
>  		test_cmp expect .gitattributes
> @@ -109,7 +109,7 @@ test_expect_success 'Store files in LFS based on size (>25 bytes)' '
>  		#
>  		# Git LFS (see https://git-lfs.github.com/)
>  		#
> -		/file4.bin filter=lfs -text
> +		/file4.bin filter=lfs diff=lfs merge=lfs -text
>  		EOF
>  		test_path_is_file .gitattributes &&
>  		test_cmp expect .gitattributes
> @@ -135,7 +135,7 @@ test_expect_success 'Store files in LFS based on extension (dat)' '
>  		#
>  		# Git LFS (see https://git-lfs.github.com/)
>  		#
> -		*.dat filter=lfs -text
> +		*.dat filter=lfs diff=lfs merge=lfs -text
>  		EOF
>  		test_path_is_file .gitattributes &&
>  		test_cmp expect .gitattributes
> @@ -163,8 +163,8 @@ test_expect_success 'Store files in LFS based on size (>25 bytes) and extension
>  		#
>  		# Git LFS (see https://git-lfs.github.com/)
>  		#
> -		*.dat filter=lfs -text
> -		/file4.bin filter=lfs -text
> +		*.dat filter=lfs diff=lfs merge=lfs -text
> +		/file4.bin filter=lfs diff=lfs merge=lfs -text
>  		EOF
>  		test_path_is_file .gitattributes &&
>  		test_cmp expect .gitattributes
> @@ -199,8 +199,8 @@ test_expect_success 'Remove file from repo and store files in LFS based on size
>  		#
>  		# Git LFS (see https://git-lfs.github.com/)
>  		#
> -		/file2.dat filter=lfs -text
> -		/path[[:space:]]with[[:space:]]spaces/file3.bin filter=lfs -text
> +		/file2.dat filter=lfs diff=lfs merge=lfs -text
> +		/path[[:space:]]with[[:space:]]spaces/file3.bin filter=lfs diff=lfs merge=lfs -text
>  		EOF
>  		test_path_is_file .gitattributes &&
>  		test_cmp expect .gitattributes
> @@ -237,8 +237,8 @@ test_expect_success 'Add .gitattributes and store files in LFS based on size (>2
>  		#
>  		# Git LFS (see https://git-lfs.github.com/)
>  		#
> -		/file2.dat filter=lfs -text
> -		/path[[:space:]]with[[:space:]]spaces/file3.bin filter=lfs -text
> +		/file2.dat filter=lfs diff=lfs merge=lfs -text
> +		/path[[:space:]]with[[:space:]]spaces/file3.bin filter=lfs diff=lfs merge=lfs -text
>  		EOF
>  		test_path_is_file .gitattributes &&
>  		test_cmp expect .gitattributes
> @@ -278,7 +278,7 @@ test_expect_success 'Add big files to repo and store files in LFS based on compr
>  		#
>  		# Git LFS (see https://git-lfs.github.com/)
>  		#
> -		/file6.bin filter=lfs -text
> +		/file6.bin filter=lfs diff=lfs merge=lfs -text
>  		EOF
>  		test_path_is_file .gitattributes &&
>  		test_cmp expect .gitattributes
Luke Diamand· Dec 20, 2016, 11:09 UTC · re: Junio C Hamano · lore

Re: [PATCH v1] git-p4: add diff/merge properties to .gitattributes for GitLFS files

On 19 December 2016 at 21:29, Junio C Hamano <gitster@pobox.com> wrote:
Show 14 quoted lines
> larsxschneider@gmail.com writes:
>
>> From: Lars Schneider <larsxschneider@gmail.com>
>>
>> The `git lfs track` command generates a .gitattributes file with diff
>> and merge properties [1]. Set the same .gitattributes format for files
>> tracked with GitLFS in git-p4.
>>
>> [1] https://github.com/git-lfs/git-lfs/blob/v1.5.3/commands/command_track.go#L121
>>
>> Signed-off-by: Lars Schneider <larsxschneider@gmail.com>
>> ---
>
> Thanks.  Luke, does this look ok?
Yes, looks good to me.
Luke
Show 105 quoted lines
>
>>
>> Notes:
>>     Base Commit: d1271bddd4 (v2.11.0)
>>     Diff on Web: https://github.com/git/git/compare/d1271bddd4...larsxschneider:e045b3d5c8
>>     Checkout:    git fetch https://github.com/larsxschneider/git git-p4/fix-lfs-attributes-v1 && git checkout e045b3d5c8
>>
>>  git-p4.py                 |  4 ++--
>>  t/t9824-git-p4-git-lfs.sh | 24 ++++++++++++------------
>>  2 files changed, 14 insertions(+), 14 deletions(-)
>>
>> diff --git a/git-p4.py b/git-p4.py
>> index fd5ca52462..87b6932c81 100755
>> --- a/git-p4.py
>> +++ b/git-p4.py
>> @@ -1098,10 +1098,10 @@ class GitLFS(LargeFileSystem):
>>                  '# Git LFS (see https://git-lfs.github.com/)\n',
>>                  '#\n',
>>              ] +
>> -            ['*.' + f.replace(' ', '[[:space:]]') + ' filter=lfs -text\n'
>> +            ['*.' + f.replace(' ', '[[:space:]]') + ' filter=lfs diff=lfs merge=lfs -text\n'
>>                  for f in sorted(gitConfigList('git-p4.largeFileExtensions'))
>>              ] +
>> -            ['/' + f.replace(' ', '[[:space:]]') + ' filter=lfs -text\n'
>> +            ['/' + f.replace(' ', '[[:space:]]') + ' filter=lfs diff=lfs merge=lfs -text\n'
>>                  for f in sorted(self.largeFiles) if not self.hasLargeFileExtension(f)
>>              ]
>>          )
>> diff --git a/t/t9824-git-p4-git-lfs.sh b/t/t9824-git-p4-git-lfs.sh
>> index 110a7e7924..1379db6357 100755
>> --- a/t/t9824-git-p4-git-lfs.sh
>> +++ b/t/t9824-git-p4-git-lfs.sh
>> @@ -81,9 +81,9 @@ test_expect_success 'Store files in LFS based on size (>24 bytes)' '
>>               #
>>               # Git LFS (see https://git-lfs.github.com/)
>>               #
>> -             /file2.dat filter=lfs -text
>> -             /file4.bin filter=lfs -text
>> -             /path[[:space:]]with[[:space:]]spaces/file3.bin filter=lfs -text
>> +             /file2.dat filter=lfs diff=lfs merge=lfs -text
>> +             /file4.bin filter=lfs diff=lfs merge=lfs -text
>> +             /path[[:space:]]with[[:space:]]spaces/file3.bin filter=lfs diff=lfs merge=lfs -text
>>               EOF
>>               test_path_is_file .gitattributes &&
>>               test_cmp expect .gitattributes
>> @@ -109,7 +109,7 @@ test_expect_success 'Store files in LFS based on size (>25 bytes)' '
>>               #
>>               # Git LFS (see https://git-lfs.github.com/)
>>               #
>> -             /file4.bin filter=lfs -text
>> +             /file4.bin filter=lfs diff=lfs merge=lfs -text
>>               EOF
>>               test_path_is_file .gitattributes &&
>>               test_cmp expect .gitattributes
>> @@ -135,7 +135,7 @@ test_expect_success 'Store files in LFS based on extension (dat)' '
>>               #
>>               # Git LFS (see https://git-lfs.github.com/)
>>               #
>> -             *.dat filter=lfs -text
>> +             *.dat filter=lfs diff=lfs merge=lfs -text
>>               EOF
>>               test_path_is_file .gitattributes &&
>>               test_cmp expect .gitattributes
>> @@ -163,8 +163,8 @@ test_expect_success 'Store files in LFS based on size (>25 bytes) and extension
>>               #
>>               # Git LFS (see https://git-lfs.github.com/)
>>               #
>> -             *.dat filter=lfs -text
>> -             /file4.bin filter=lfs -text
>> +             *.dat filter=lfs diff=lfs merge=lfs -text
>> +             /file4.bin filter=lfs diff=lfs merge=lfs -text
>>               EOF
>>               test_path_is_file .gitattributes &&
>>               test_cmp expect .gitattributes
>> @@ -199,8 +199,8 @@ test_expect_success 'Remove file from repo and store files in LFS based on size
>>               #
>>               # Git LFS (see https://git-lfs.github.com/)
>>               #
>> -             /file2.dat filter=lfs -text
>> -             /path[[:space:]]with[[:space:]]spaces/file3.bin filter=lfs -text
>> +             /file2.dat filter=lfs diff=lfs merge=lfs -text
>> +             /path[[:space:]]with[[:space:]]spaces/file3.bin filter=lfs diff=lfs merge=lfs -text
>>               EOF
>>               test_path_is_file .gitattributes &&
>>               test_cmp expect .gitattributes
>> @@ -237,8 +237,8 @@ test_expect_success 'Add .gitattributes and store files in LFS based on size (>2
>>               #
>>               # Git LFS (see https://git-lfs.github.com/)
>>               #
>> -             /file2.dat filter=lfs -text
>> -             /path[[:space:]]with[[:space:]]spaces/file3.bin filter=lfs -text
>> +             /file2.dat filter=lfs diff=lfs merge=lfs -text
>> +             /path[[:space:]]with[[:space:]]spaces/file3.bin filter=lfs diff=lfs merge=lfs -text
>>               EOF
>>               test_path_is_file .gitattributes &&
>>               test_cmp expect .gitattributes
>> @@ -278,7 +278,7 @@ test_expect_success 'Add big files to repo and store files in LFS based on compr
>>               #
>>               # Git LFS (see https://git-lfs.github.com/)
>>               #
>> -             /file6.bin filter=lfs -text
>> +             /file6.bin filter=lfs diff=lfs merge=lfs -text
>>               EOF
>>               test_path_is_file .gitattributes &&
>>               test_cmp expect .gitattributes

← back to recent threads