mirror of
				https://github.com/zulip/zulip.git
				synced 2025-11-03 21:43:21 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			29 lines
		
	
	
		
			967 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
		
			967 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/usr/bin/env bash
 | 
						|
 | 
						|
# This hook runs the Zulip code linter ./tools/lint and returns true
 | 
						|
# regardless of linter results so that your commit may continue.
 | 
						|
 | 
						|
# Messages from the linter will be printed out to the screen.
 | 
						|
#
 | 
						|
# If you are running this one machine hosting a Vagrant guest that
 | 
						|
# contains your provisioned Zulip development environment, the linter
 | 
						|
# will automatically be run through `vagrant ssh`.
 | 
						|
 | 
						|
changed_files=()
 | 
						|
while read -r -d '' f; do
 | 
						|
    changed_files+=("$f")
 | 
						|
done < <(git diff -z --cached --name-only --diff-filter=ACM)
 | 
						|
if [ ${#changed_files} -eq 0 ]; then
 | 
						|
    echo "No changed files to lint."
 | 
						|
    exit 0
 | 
						|
fi
 | 
						|
 | 
						|
if [ -z "$VIRTUAL_ENV" ] && command -v vagrant > /dev/null && [ -e .vagrant ]; then
 | 
						|
    vcmd="/srv/zulip/tools/lint --skip=gitlint --force $(printf '%q ' "${changed_files[@]}") || true"
 | 
						|
    echo "Running lint using vagrant..."
 | 
						|
    vagrant ssh -c "$vcmd"
 | 
						|
else
 | 
						|
    ./tools/lint --skip=gitlint --force "${changed_files[@]}" || true
 | 
						|
fi
 | 
						|
exit 0
 |