cygwin64でrepoを使うとき、エラー:error: repo is not installed. Use "repo init" to install it here.
cygwin64を久しぶりに使った。
$repo error: repo is not installed. Use "repo init" to install it here.
どうして、エラーになるのか、わかりませんでした。
PATHは、.bash_profileで~/binに通してあります。
PATHも通っているし。
23 # Set PATH so it includes user's private bin if it exists 24 if [ -d "${HOME}/bin" ] ; then 25 PATH="${HOME}/bin:${PATH}" 26 fi
whichでも、repoのコマンド位置が正常に引ける。
$ which repo /home/m_fujii/bin/repo
エラーになる原因は、repoにコマンド引数(initやhelp,-h)がないことでした。
"repo -help"はエラーになりました。
$ repo help usage: repo COMMAND [ARGS] repo is not yet installed. Use "repo init" to install it here. The most commonly used repo commands are: init Install repo in the current working directory help Display detailed help on a command For access to the full online help, install repo ("repo init").
675 def _NotInstalled(): 676 _print('error: repo is not installed. Use "repo init" to install it here.', <===出ているメッセージ 677 file=sys.stderr) 678 sys.exit(1)
731 if not repo_main: 732 if opt.help: 733 _Usage() 734 if cmd == 'help': 735 _Help(args) 736 if not cmd: <=== 引数がないと、ここに入るようです。 737 _NotInstalled() <=== ここ 738 if cmd == 'init': 739 if my_git: 740 _SetDefaultsTo(my_git) 741
opt.helpの値
628 def _ParseArguments(args): 629 cmd = None 630 opt = _Options() 631 arg = [] 632 633 for i in range(len(args)): 634 a = args[i] 635 if a == '-h' or a == '--help': 636 opt.help = True <=== 637 638 elif not a.startswith('-'): 639 cmd = a 640 arg = args[i + 1:] 641 break 642 return cmd, opt, arg