object directory does not exist - Git operations fail after upgrade or BITBUCKET_HOME update

お困りですか?

アトラシアン コミュニティをご利用ください。

コミュニティに質問

問題

After upgrading Bitbucket Server to version 3.2+ (from a version prior to 3.2) or having moved BITBUCKET_HOME to a different location, git operations (e.g. git push) fail:

git -c diff.mnemonicprefix=false -c core.quotepath=false push -v --tags origin branchname:branchname
POST git-receive-pack (700 bytes)
remote: error: object directory C:/Bitbucket ServerData/data/repositories/26/objects does not exist; check .git/objects/info/alternates. [K
remote: fatal: unresolved deltas left after unpacking [K
error: unpack failed: unpack-objects abnormal exit

Pushing to https://username@bitbucket.server/scm/projectkey/reponame.git
To https://username@bitbucket.server/scm/projectkey/reponame.git
! [remote rejected] branchname -> branchname (unpacker error)
error: failed to push some refs to 'https://username@bitbucket.server/scm/projectkey/reponame.git'

Completed with errors, see above."

You could also be getting the following screen upon browsing forks:

'/usr/bin/git cat-file -t refs/heads/master:' exited with code 128 saying: error: object directory /abdera/user0/atlass/application-data/bitbucket/data/repositories/292/objects does not exist; check .git/objects/info/alternates.

原因

The forked repository (e.g. ID 292) of the upstream repository (e.g. ID 45) still refers to the old path in the alternates file which Bitbucket Server uses to implement the fork functionality

This is tracked as  BSERV-9625 - Getting issue details... STATUS .

In the past we saw this happening when during the upgrade to a version higher than 3.2 (which included a data directory migration).

Another possible cause is described in  BSERV-9761 - Getting issue details... STATUS .

回避策

  1. Stop Bitbucket Server.
  2. Correct the path in the alternates file leaving the repoID unchanged:
    1. For versions 3.2+

      BITBUCKET_HOME/shared/data/repositories/<repoID>/objects/info/alternates
    2. For versions prior to 3.2

      BITBUCKET_HOME/data/repositories/<repoID>/objects/info/alternates
  3. Start Bitbucket Server.

最終更新日 2018 年 11 月 12 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.