git-remote-mediawiki: display message when launched directly
Users may be confused when they run the perl script directly. A good way to detect this is to check the number of parameters used to call the script, which is never different from 2 in a normal use. Display a proper error message to avoid any confusion. Signed-off-by: Célestin Matte <celestin.matte@ensimag.fr> Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Célestin Matte committed
Jun 11, 2013 at 15:38 UTC
5ada8687995fadea01f755d52ceec58337d003a3
1 file changed
+15
contrib/mw-to-git/git-remote-mediawiki.perl
+15
@@ -41,6 +41,10 @@ use constant NULL_SHA1 => "0000000000000000000000000000000000000000";
41
# Used on Git's side to reflect empty edit messages on the wiki
42
use constant EMPTY_MESSAGE => '*Empty MediaWiki Message*';
43
44
+if (@ARGV != 2) {
45
+ exit_error_usage();
46
+}
47
+
48
my $remotename = $ARGV[0];
49
my $url = $ARGV[1];
50
@@ -156,6 +160,17 @@ while (<STDIN>) {
160
161
########################## Functions ##############################
162
163
+## error handling
164
+sub exit_error_usage {
165
+ die "ERROR: git-remote-mediawiki module was not called with a correct number of\n" .
166
+ "parameters\n" .
167
+ "You may obtain this error because you attempted to run the git-remote-mediawiki\n" .
168
+ "module directly.\n" .
169
+ "This module can be used the following way:\n" .
170
+ "\tgit clone mediawiki://<address of a mediawiki>\n" .
171
+ "Then, use git commit, push and pull as with every normal git repository.\n";
172
+}
173
+
174
## credential API management (generic functions)
175
176
sub credential_read {