|  | 
 | _git_untrack () | 
 | { | 
 | 	_git_branch | 
 | } | 
 |  | 
 | _git_track () | 
 | { | 
 | 	local remote="" | 
 | 	local trim_remote="" | 
 |  | 
 | 	if [[ $cur =~ ^.+?/ ]] | 
 | 	then | 
 | 		remote=${BASH_REMATCH[0]} | 
 | 	fi | 
 |  | 
 | 	# We have no remote, let's get one and append the / | 
 | 	if [ -z "$remote" ]; then | 
 | 		__gitcomp_nl "$(__git_remotes)" "" "$cur" "/" | 
 | 		return | 
 | 	fi | 
 | 	# remove the / for the ls-remote | 
 | 	trim_remote="${remote::-1}" | 
 | 	remote_branches="$(git ls-remote --heads $trim_remote | grep -o '[^/]*$')" | 
 | 	# arg3: generate completion matches, should be current string minus | 
 | 	# remote/ | 
 | 	__gitcomp_nl "$remote_branches" "$remote" "${cur#$remote}" | 
 | } | 
 |  | 
 | _git_track_review () | 
 | { | 
 | 	_git_track | 
 | } | 
 |  |