34 lines
		
	
	
	
		
			786 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			34 lines
		
	
	
	
		
			786 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
#!/bin/sh
 | 
						|
 | 
						|
test_description='reflog walk shows repeated commits again'
 | 
						|
. ./test-lib.sh
 | 
						|
 | 
						|
test_expect_success 'setup commits' '
 | 
						|
	test_tick &&
 | 
						|
	echo content >file && git add file && git commit -m one &&
 | 
						|
	git tag one &&
 | 
						|
	echo content >>file && git add file && git commit -m two &&
 | 
						|
	git tag two
 | 
						|
'
 | 
						|
 | 
						|
test_expect_success 'setup reflog with alternating commits' '
 | 
						|
	git checkout -b topic &&
 | 
						|
	git reset one &&
 | 
						|
	git reset two &&
 | 
						|
	git reset one &&
 | 
						|
	git reset two
 | 
						|
'
 | 
						|
 | 
						|
test_expect_success 'reflog shows all entries' '
 | 
						|
	cat >expect <<-\EOF &&
 | 
						|
		topic@{0} reset: moving to two
 | 
						|
		topic@{1} reset: moving to one
 | 
						|
		topic@{2} reset: moving to two
 | 
						|
		topic@{3} reset: moving to one
 | 
						|
		topic@{4} branch: Created from HEAD
 | 
						|
	EOF
 | 
						|
	git log -g --format="%gd %gs" topic >actual &&
 | 
						|
	test_cmp expect actual
 | 
						|
'
 | 
						|
 | 
						|
test_done
 |