特定のコミット ハッシュのファイル コンテンツを取得できません。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
});
}
}