forked from mirrors/linux
		
	get_maintainer.pl: reduce need for command-line option -f
If a vcs is used, look to see if the vcs tracks the file specified and so the -f option becomes optional. Link: http://lkml.kernel.org/r/7c86a8df0d48770c45778a43b6b3e4627b2a90ee.1469746395.git.joe@perches.com Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
		
							parent
							
								
									750afe7bab
								
							
						
					
					
						commit
						4cad35a7ca
					
				
					 1 changed files with 19 additions and 1 deletions
				
			
		|  | @ -133,6 +133,7 @@ my %VCS_cmds_git = ( | ||||||
|     "author_pattern" => "^GitAuthor: (.*)", |     "author_pattern" => "^GitAuthor: (.*)", | ||||||
|     "subject_pattern" => "^GitSubject: (.*)", |     "subject_pattern" => "^GitSubject: (.*)", | ||||||
|     "stat_pattern" => "^(\\d+)\\t(\\d+)\\t\$file\$", |     "stat_pattern" => "^(\\d+)\\t(\\d+)\\t\$file\$", | ||||||
|  |     "file_exists_cmd" => "git ls-files \$file", | ||||||
| ); | ); | ||||||
| 
 | 
 | ||||||
| my %VCS_cmds_hg = ( | my %VCS_cmds_hg = ( | ||||||
|  | @ -161,6 +162,7 @@ my %VCS_cmds_hg = ( | ||||||
|     "author_pattern" => "^HgAuthor: (.*)", |     "author_pattern" => "^HgAuthor: (.*)", | ||||||
|     "subject_pattern" => "^HgSubject: (.*)", |     "subject_pattern" => "^HgSubject: (.*)", | ||||||
|     "stat_pattern" => "^(\\d+)\t(\\d+)\t\$file\$", |     "stat_pattern" => "^(\\d+)\t(\\d+)\t\$file\$", | ||||||
|  |     "file_exists_cmd" => "hg files \$file", | ||||||
| ); | ); | ||||||
| 
 | 
 | ||||||
| my $conf = which_conf(".get_maintainer.conf"); | my $conf = which_conf(".get_maintainer.conf"); | ||||||
|  | @ -430,7 +432,7 @@ foreach my $file (@ARGV) { | ||||||
| 	    die "$P: file '${file}' not found\n"; | 	    die "$P: file '${file}' not found\n"; | ||||||
| 	} | 	} | ||||||
|     } |     } | ||||||
|     if ($from_filename) { |     if ($from_filename || vcs_file_exists($file)) { | ||||||
| 	$file =~ s/^\Q${cur_path}\E//;	#strip any absolute path | 	$file =~ s/^\Q${cur_path}\E//;	#strip any absolute path | ||||||
| 	$file =~ s/^\Q${lk_path}\E//;	#or the path to the lk tree | 	$file =~ s/^\Q${lk_path}\E//;	#or the path to the lk tree | ||||||
| 	push(@files, $file); | 	push(@files, $file); | ||||||
|  | @ -2124,6 +2126,22 @@ sub vcs_file_blame { | ||||||
|     } |     } | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | sub vcs_file_exists { | ||||||
|  |     my ($file) = @_; | ||||||
|  | 
 | ||||||
|  |     my $exists; | ||||||
|  | 
 | ||||||
|  |     my $vcs_used = vcs_exists(); | ||||||
|  |     return 0 if (!$vcs_used); | ||||||
|  | 
 | ||||||
|  |     my $cmd = $VCS_cmds{"file_exists_cmd"}; | ||||||
|  |     $cmd =~ s/(\$\w+)/$1/eeg;		# interpolate $cmd | ||||||
|  | 
 | ||||||
|  |     $exists = &{$VCS_cmds{"execute_cmd"}}($cmd); | ||||||
|  | 
 | ||||||
|  |     return $exists; | ||||||
|  | } | ||||||
|  | 
 | ||||||
| sub uniq { | sub uniq { | ||||||
|     my (@parms) = @_; |     my (@parms) = @_; | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
		Reference in a new issue
	
	 Joe Perches
						Joe Perches