 8d6888ec6a
			
		
	
	8d6888ec6a
	
	
	
		
			
			stripspace/text-based formatting kicks in when specifying the notes
content with -m or -F, or when an editor is used to edit the notes.
To binary-safely create notes from files, the following construct is
required:
    git notes add -C $(git hash-object -w <file>) <object>
Explain this trick (thanks, Johan!) in the manual.  Add an ordinary
example, too, to keep this esoteric one company.
Cc: Johan Herland <johan@herland.net>
Cc: Thomas Rast <trast@student.ethz.ch>
Cc: Jeff King <peff@peff.net>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
		
	
		
			
				
	
	
		
			39 lines
		
	
	
		
			818 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			39 lines
		
	
	
		
			818 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/sh
 | |
| 
 | |
| test_description='Examples from the git-notes man page
 | |
| 
 | |
| Make sure the manual is not full of lies.'
 | |
| 
 | |
| . ./test-lib.sh
 | |
| 
 | |
| test_expect_success 'setup' '
 | |
| 	test_commit A &&
 | |
| 	test_commit B &&
 | |
| 	test_commit C
 | |
| '
 | |
| 
 | |
| test_expect_success 'example 1: notes to add an Acked-by line' '
 | |
| 	cat <<-\EOF >expect &&
 | |
| 	    B
 | |
| 
 | |
| 	Notes:
 | |
| 	    Acked-by: A C Ker <acker@example.com>
 | |
| 	EOF
 | |
| 	git notes add -m "Acked-by: A C Ker <acker@example.com>" B &&
 | |
| 	git show -s B^{commit} >log &&
 | |
| 	tail -n 4 log >actual &&
 | |
| 	test_cmp expect actual
 | |
| '
 | |
| 
 | |
| test_expect_success 'example 2: binary notes' '
 | |
| 	cp "$TEST_DIRECTORY"/test4012.png .
 | |
| 	git checkout B &&
 | |
| 	blob=$(git hash-object -w test4012.png) &&
 | |
| 	git notes --ref=logo add -C "$blob" &&
 | |
| 	git notes --ref=logo copy B C &&
 | |
| 	git notes --ref=logo show C >actual &&
 | |
| 	test_cmp test4012.png actual
 | |
| '
 | |
| 
 | |
| test_done
 |