portageをsyncしようとすると.gitがどうので怒られる。

いつも通りportage --syncしようとしたところ、こんなエラーが出ていました。

# emerge --sync
>>> Syncing repository 'gentoo' into '/usr/portage'...
!!! /usr/portage appears to be under revision control (contains .git).
!!! Aborting rsync sync.

面倒臭かったのでしばらく放置していたのだけれど、いい加減なんとかしないといかんと思って対応。

repos.confはこんな感じ。

[DEFAULT]
main-repo = gentoo

[gentoo]
location = /usr/portage
sync-type = rsync
sync-uri = rsync://rsync.jp.gentoo.org/gentoo-portage
auto-sync = yes

ふつうです。

gitがどうのと言っているので、とりあえず問題のディレクトリを見に行ってみる。

$ ls -a /usr/portage/ | grep .git
.git

普通にある。

gitのディレクトリなのにrsyncするなよって事っぽいので、.gitをリネームしてみる。

# mv /usr/portage/{.git,git_backup}

これだけで多分平気。 あとはいつも通りsync出来ます。 大丈夫そうなら、バックアップしておいた/usr/portage/git_backupは消しておっけーです。

参考: Gentoo Forums :: View topic - portage appears to be under revision control (contains .git)