rcmdnk's blog
Last update

ソフトウェア デザイン 2015年 01月号 [雑誌]

Vimのプラグイン管理のプラグインであるNeoBundle をアップデートしたら 大量のエラーが出てきてちょっとびっくり。

gitプロトコルの使用廃止

Fix the documentation · Shougo/neobundle.vim@d86d98a

このドキュメントのアップデートにあるように、 プラグインをGitHubのレポジトリ等からGitを使って取得するとき、 gitプロトコルを使うことができなくなりました。

GitHubのデフォルトプロトコルがhttpsなので以前から そちらがNeoBundleでもデフォルトになってましたが、 今回から完全にgitを使えなくなった形です。

このプロトコルは

g:neobundle#types#git#default_protocol

という値で変更することが出来、 これまではこれを

let g:neobundle#types#git#default_protocol = 'git'

とすることでgitプロトコルを使うことが出来ました。

で、この設定が入った.vimrcを使ってたんですが、 NeoBundleがアップデートされたところ、 Vim起動時に大量の

[neobundle] The protocol "git"is invalid.  Please use https or ssh instead.
[neobundle] The protocol "git"is invalid.  Please use https or ssh instead.
[neobundle] The protocol "git"is invalid.  Please use https or ssh instead.
[neobundle] The protocol "git"is invalid.  Please use https or ssh instead.
...

という注意が出て、Reinstallするパッケージが見つかったので Reinstallしますか?みたいなのが出ました。

追記: 2015/11/17

とのことです。

追記ここまで

これをyesしてReinstallしようとしても、大量の失敗が出るだけ。

そこで、.vimrc内の上のg:neobundle#types#git#default_protocol の設定を消し、 ~/.vim/bundleを削除してもう一度プラグインを全てインストールしなおしてみたところ 上手くインストールできました。

何故gitプロトコルを指定していたのか、 もう覚えてなくて(良くない…自分作成のプラグインとかでそこから直接編集push出来るからとか…?)、取り敢えず不具合は無さそうなので取り敢えずはこれでOK。

追記: 2015/11/19

Gitのインストールオプションによってはhttpsプロトコルを理解できない場合があります。

この様な状態でhttpsを使うようにすると、

[neobundle] fatal: Unable to find remote helper for 'https'

と言ったエラーが出ます。

この場合はGit自体をhttpsが分かるようにインストールし直す必要があります。

これがあったので 環境によってhttpsが使えない所があって、 gitプロトコルを使うように指定していたみたいです。

いくつかの環境で実際にvimrcを新しくしてみたらhttpsが使えなくてエラーが出ました。

取り敢えずルート権限が無いようなところでも上のリンクに書いてある様に ローカルにhttpsオプション付きでgitをインストールして使える様にしました。

追記ここまで

Sponsored Links
Sponsored Links

« HTMLでブラウザの表示幅が狭い時にテーブルの右側が切れるのを防ぐ rumpsを使ってPythonで簡単にMacのメニューバーアプリを作る »

}