Estoy desarrollando una extensión para github. Necesito buscar un compromiso. Estoy usando github api, en primer lugar, intenté obtener todas las confirmaciones en api, pero el valor máximo por página es 100. En segundo lugar, probé https://api.github.com/repos/{owner}/{repo}/commits?q={commit_message} pero no funciona. Entonces, ¿cómo puedo encontrar un compromiso que estoy buscando en github api?
Puede utilizar la API de confirmación de búsqueda . Es lo suficientemente flexible como para buscar por diferentes calificadores, como el nombre de usuario del confirmador, el autor, el repositorio, la organización, etc.
Tenga en cuenta que hay un límite de tiempo para ejecutar su búsqueda, en caso de que exceda el límite de tiempo, la API devuelve las coincidencias que ya se encontraron antes del tiempo de espera y la respuesta tiene la propiedad disabled_results establecida en verdadero, lea más sobre aquí
Aquí hay un ejemplo que usa Octokit que busca dentro de GitHub org la cadena de prueba
| Buscar mensaje de confirmación de GitHub | Ver en Fusebit |
|---|
const text = 'test'; const org = 'github'; const query =`${text} org:${org}`; const searchResult = await github.rest.search.commits({ q: query }); // In case there is a timeout running the query, you can use incomplete_results to check if there are likely more results // for your query, read more here https://docs.github.com/en/rest/reference/search#timeouts-and-incomplete-results const { items, total_count} = searchResult.data; console.log(items.map(commit => commit.commit)); console.log(`Found ${total_count} commits for ${text} at GitHub org called ${org}`);Lea esto: GitHub API Docs En la documentación original dice que use get get /repos/{owner}/{repo}/commits . El error puede ser causado por esto. Debería revisar la documentación nuevamente.
await octokit.request('GET /repos/{owner}/{repo}/commits', { owner: 'octocat', repo: 'hello-world' }) [ { "url": "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e", "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", "node_id": "MDY6Q29tbWl0NmRjYjA5YjViNTc4NzVmMzM0ZjYxYWViZWQ2OTVlMmU0MTkzZGI1ZQ==", "html_url": "https://github.com/octocat/Hello-World/commit/6dcb09b5b57875f334f61aebed695e2e4193db5e", "comments_url": "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e/comments", "commit": { "url": "https://api.github.com/repos/octocat/Hello-World/git/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e", "author": { "name": "Monalisa Octocat", "email": "support@github.com", "date": "2011-04-14T16:00:49Z" }, "committer": { "name": "Monalisa Octocat", "email": "support@github.com", "date": "2011-04-14T16:00:49Z" }, "message": "Fix all the bugs", "tree": { "url": "https://api.github.com/repos/octocat/Hello-World/tree/6dcb09b5b57875f334f61aebed695e2e4193db5e", "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e" } Si examina las respuestas, puede ver la columna de mensajes, tal vez esto ayude. También encontré esto en otra pregunta GET https://api.github.com/repos/izuzak/pmrpc/commits?path=examples&page=1&per_page=1