Title: How to get the hash of the most recent commit of a file under a ref? · gitpython-developers/GitPython · Discussion #1949 · GitHub
Open Graph Title: How to get the hash of the most recent commit of a file under a ref? · gitpython-developers/GitPython · Discussion #1949
X Title: How to get the hash of the most recent commit of a file under a ref? · gitpython-developers/GitPython · Discussion #1949
Description: How to get the hash of the most recent commit of a file under a ref?
Open Graph Description: I can get the required information using the git wrapper: repo.git.log("-1", '--pretty="%H"', ref, '--', path) However this is too slow when run on in a loop over every file in a set of refs due to...
X Description: I can get the required information using the git wrapper: repo.git.log("-1", '--pretty="%H"', ref, '--', path) However this is too slow when run on in a loop ove...
Opengraph URL: https://github.com/gitpython-developers/GitPython/discussions/1949
X: @github
Domain: togithub.com
{"@context":"https://schema.org","@type":"QAPage","mainEntity":{"@type":"Question","name":"How to get the hash of the most recent commit of a file under a ref?","text":"I can get the required information using the git wrapper:
\nrepo.git.log(\"-1\", '--pretty=\"%H\"', ref, '--', path)
\nHowever this is too slow when run on in a loop over every file in a set of refs due to process execution overhead.
","upvoteCount":1,"answerCount":1,"acceptedAnswer":{"@type":"Answer","text":"The algorithm can't be used - instead one should traverse each commit, see which files were changed, and remove those from the set of all currently tracked files while associating the hash of the commit. Repeat until the set of tracked files is empty.
\nThis will traverse the commit-graph once, in the worst case, and diff the trees of each commit. But there isn't really any other way.
","upvoteCount":1,"url":"https://github.com/gitpython-developers/GitPython/discussions/1949#discussioncomment-10268253"}}}
| route-pattern | /_view_fragments/Voltron::DiscussionsFragmentsController/show/:user_id/:repository/:discussion_number/discussion_layout(.:format) |
| route-controller | voltron_discussions_fragments |
| route-action | discussion_layout |
| fetch-nonce | v2:e809a1ac-1320-fc2b-22e4-88b08cdc36fb |
| current-catalog-service-hash | 9f0abe34da433c9b6db74bffa2466494a717b579a96b30a5d252e5090baea7be |
| request-id | A664:2A6689:A159D4:E32CF7:69690C17 |
| html-safe-nonce | 467ad5462d9bfd2d1293681bda88548101a483c1be94d595f0edbe74594feb44 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJBNjY0OjJBNjY4OTpBMTU5RDQ6RTMyQ0Y3OjY5NjkwQzE3IiwidmlzaXRvcl9pZCI6IjU1NjM5OTQ3ODIxMzcxMjU5MTEiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ== |
| visitor-hmac | 23935db0f3f2e73de6fb0b99563851d3405d1ca968ee885b7d7dd86bb41d4a6a |
| hovercard-subject-tag | discussion:7022835 |
| github-keyboard-shortcuts | repository,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/Voltron::DiscussionsFragmentsController/show/gitpython-developers/GitPython/1949/discussion_layout |
| twitter:image | https://opengraph.githubassets.com/e26b95a1fb9e99dbba9e2eece83b8e7803fd88e51d9d19447a9b7943f833b5a8/gitpython-developers/GitPython/discussions/1949 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/e26b95a1fb9e99dbba9e2eece83b8e7803fd88e51d9d19447a9b7943f833b5a8/gitpython-developers/GitPython/discussions/1949 |
| og:image:alt | I can get the required information using the git wrapper: repo.git.log("-1", '--pretty="%H"', ref, '--', path) However this is too slow when run on in a loop over every file in a set of refs due to... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| hostname | github.com |
| expected-hostname | github.com |
| None | e6156bd4ef9f2dc8dadf4c49a8f7ed8532186388cef72eda3ccb9f0ab3b8cfca |
| turbo-cache-control | no-preview |
| go-import | github.com/gitpython-developers/GitPython git https://github.com/gitpython-developers/GitPython.git |
| octolytics-dimension-user_id | 503709 |
| octolytics-dimension-user_login | gitpython-developers |
| octolytics-dimension-repository_id | 1126087 |
| octolytics-dimension-repository_nwo | gitpython-developers/GitPython |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 1126087 |
| octolytics-dimension-repository_network_root_nwo | gitpython-developers/GitPython |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | ee2210c3e58153aae53400c942f8a7b4bbb43ec4 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width