Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

How to get the hash of the most recent commit of a file under a ref?#1949

AnsweredbyByron
ali1234 asked this question inQ&A
Discussion options

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 process execution overhead.

You must be logged in to vote

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.

This 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.

Replies: 1 comment

Comment options

Byron
Aug 7, 2024
Maintainer

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.

This 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.

You must be logged in to vote
0 replies
Answer selected byali1234
Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment
Category
Q&A
Labels
None yet
2 participants
@ali1234@Byron

[8]ページ先頭

©2009-2025 Movatter.jp