1

特定のコミット ハッシュのファイル コンテンツを取得できません。ref のハッシュに関係なく、デフォルト ブランチから現在のファイル バージョンを取得します。

私の唯一の推測では、ref は単純なハッシュにすることはできませんが、ドキュメントでは「ref」を「コミット/ブランチ/タグの名前」と説明しています。フォーマットについてはこれ以上指示しません。

runkit here で問題を再現しました。そして、以下の実際のプロジェクトからコードを提供しました。

async getDifference(): Promise<void> {
    let oldFile = await this.gitHubApi.getContent(this.repo.owner.login, this.repo.name, `./${this.file}`, this.oldHash);
    let newFile = await this.gitHubApi.getContent(this.repo.owner.login, this.repo.name, `./${this.file}`, this.newHash);
    if(oldFile.data.content === newFile.data.content) {
        console.log('no differencce');
    } else {
       ...
    }
    return;
}


public getContent(owner: string, repo: string, path: string, ref?: string): Promise<any> {
    if(ref) {
        return this.octokit.repos.getContent({
            owner: owner,
            repo: repo,
            path: path,
            ref: ref
        });
    } else {
        return this.octokit.repos.getContent({
            owner: owner,
            repo: repo,
            path: path
        });
    }
}
4

1 に答える 1