Drone の設定をする時に良くあるエラー。/.git does not - stale checkout?

こんにちは yoshi です。

drone.ymlを記述しているときにすごくすごくハマった内容。
/.git does not - stale checkout?で引っかかるこの問題。

$ go get
package github.com/astaxie/beego/orm: /drone/src/bitbucket.org/bastien_app_developers/midiapi/src/github.com/astaxie/beego exists but /drone/src/bitbucket.org/bastien_app_developers/midiapi/src/github.com/astaxie/beego/.git does not - stale checkout?  
package github.com/astaxie/beego/plugins/cors: cannot find package "github.com/astaxie/beego/plugins/cors" in any of:  
    /usr/local/go/src/github.com/astaxie/beego/plugins/cors (from $GOROOT)
    /drone/src/bitbucket.org/bastien_app_developers/midiapi/src/github.com/astaxie/beego/plugins/cors (from $GOPATH)
[info] build failed (exit code 1)

これってどうすれば治るのかとたくさん探っていたところ、どうやら bitbucket にある github.com 以下のライブラリーがとても邪魔しているそうです。 つまりレポジトリには .git があるのですが、bitbucketには恐らく無いので怒られるのです。

これは go get しているレポジトリと、リモートレポジトリとでは少しファイルの中身が違うのですね。

なので今回は rm -r github.com として一旦削除してあげてから、go getしてあげたら治りました。

これよくあったので、書き留めておきます。