LoginSignup
5
5

More than 5 years have passed since last update.

GitBucketを使っててコミットコメントにissue番号を入れたのにissueにコミットが紐づかない

Posted at

GitBucket のバージョンは 4.8

gitbucket.jpg

コミット→issueへのリンクはできてるけど、

gitbucket.jpg

issue→コミットへのリンクができていない。

みたいなことがあって悩んでた。

原因は、 git configuser.email に設定しているメールアドレスに該当するユーザーが GitBucket 上に存在しないからだった。

コミットをもとに関連する issue にコメントを登録する実装は次のようになっている。

IssuesService.scala
  def createIssueComment(owner: String, repository: String, commit: CommitInfo)(implicit s: Session) = {
    StringUtil.extractIssueId(commit.fullMessage).foreach { issueId =>
      if(getIssue(owner, repository, issueId).isDefined){
        getAccountByMailAddress(commit.committerEmailAddress).foreach { account =>
          createComment(owner, repository, account.userName, issueId.toInt, commit.fullMessage + " " + commit.id, "commit")
        }
      }
    }
  }

GitHub で見る

一番内側のループで、コミット時のメールアドレスに該当する Gitbucket 上のアカウントでループしている。
getAccountByMailAddress(commit.committerEmailAddress)

なので、 user.email に設定しているアドレスに該当するユーザーが GitBucket 上に存在しない場合は、ここのループが空振りして issue にコメントが登録されない。

user.email を設定しなおした後は、

gitbucket.jpg

gitbucket.jpg

ちゃんと相互に紐づいてる。

5
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
5