mirror of
https://github.com/MaaAssistantArknights/MaaAssistantArknights.git
synced 2026-07-16 09:50:40 +08:00
27 lines
1016 B
Python
27 lines
1016 B
Python
import os.path
|
|
import subprocess
|
|
|
|
|
|
def get_latest_file_content(file_path='./cli.py', encoding='utf-8', tag_name=""):
|
|
dirname = os.path.dirname(file_path)
|
|
basename = os.path.basename(file_path)
|
|
# 获取最近一次修改该文件的commit的ID
|
|
heading = 'HEAD'
|
|
if tag_name:
|
|
result = subprocess.run(['git', 'rev-list', '-n', '1', 'tag-autolocalization', '--', basename],
|
|
cwd=dirname,
|
|
capture_output=True,
|
|
text=True)
|
|
commit_id = result.stdout.replace('"', '').replace('\'', '').strip()
|
|
heading = commit_id if commit_id else heading
|
|
result = subprocess.run(['git', 'show', f'{heading}:./{basename}'],
|
|
cwd=dirname,
|
|
capture_output=True,
|
|
text=True,
|
|
encoding=encoding)
|
|
return result.stdout
|
|
|
|
|
|
if __name__ == '__main__':
|
|
print(get_latest_file_content('cli.py'))
|