Skip to content

Commit f9086c4

Browse files
authored
Merge pull request #92 from qoomon/copilot/fix-commit-tree-error
fix: pass parent commit's tree SHA as base_tree instead of local HEAD tree
2 parents e5a26c8 + b84cb86 commit f9086c4

2 files changed

Lines changed: 6 additions & 4 deletions

File tree

dist/index.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38244,11 +38244,12 @@ async function createCommit(octokit, repository, args) {
3824438244
})));
3824538245
console.log('Creating commit tree...');
3824638246
const chunkSize = 100;
38247+
let chunkBaseTree = args.parents[0];
3824738248
for (let i = 0; i < commitTreeBlobs.length; i += chunkSize) {
3824838249
const chunk = commitTreeBlobs.slice(i, i + chunkSize);
38249-
commitTreeSha = await octokit.rest.git.createTree({
38250+
chunkBaseTree = commitTreeSha = await octokit.rest.git.createTree({
3825038251
...repository,
38251-
base_tree: commitTreeSha,
38252+
...(chunkBaseTree !== undefined ? { base_tree: chunkBaseTree } : {}),
3825238253
tree: chunk,
3825338254
}).then(({ data }) => data.sha).finally(() => {
3825438255
progress++;

lib/github.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,11 +59,12 @@ export async function createCommit(
5959
console.log('Creating commit tree...')
6060
const chunkSize = 100
6161

62+
let chunkBaseTree: string | undefined = args.parents[0]
6263
for (let i = 0; i < commitTreeBlobs.length; i += chunkSize) {
6364
const chunk = commitTreeBlobs.slice(i, i + chunkSize)
64-
commitTreeSha = await octokit.rest.git.createTree({
65+
chunkBaseTree = commitTreeSha = await octokit.rest.git.createTree({
6566
...repository,
66-
base_tree: commitTreeSha,
67+
...(chunkBaseTree !== undefined ? {base_tree: chunkBaseTree} : {}),
6768
tree: chunk,
6869
}).then(({data}) => data.sha).finally(() => {
6970
progress++;

0 commit comments

Comments
 (0)