打印Git信息
import subprocess
def run_git_cmd(args):
try:
return subprocess.check_output(['git'] + args).decode().strip()
except subprocess.CalledProcessError:
return "N/A"
def get_git_info():
info = {
"Branch": run_git_cmd(['rev-parse', '--abbrev-ref', 'HEAD']),
"Commit Hash": run_git_cmd(['rev-parse', 'HEAD']),
"Short Hash": run_git_cmd(['rev-parse', '--short', 'HEAD']),
"Author": run_git_cmd(['log', '-1', '--pretty=format:%an <%ae>']),
"Date": run_git_cmd(['log', '-1', '--pretty=format:%ad']),
"Message": run_git_cmd(['log', '-1', '--pretty=format:%s']),
"Remote": run_git_cmd(['remote', '-v']),
"Status": run_git_cmd(['status', '--short']),
}
print("Git Information:")
for k, v in info.items():
print(f"{k:12}: {v}")
get_git_info()
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
上次更新: 2025/07/18, 09:51:17