python脚本读取excel表中的指定文件的指定行git blame修改者信息

封装脚本
pip install pipreqs库分析当前目录下的python脚本所需要的库并生成requirement.txt
import argparse脚本输入参数

import subprocess
from openpyxl import load_workbook
import argparse


def split_blame(string: str):
    return string.split('(')[1].split()[0]


def get_blame_info(repo_path, csv_path):
    wb = load_workbook(csv_path)
    sheet = wb
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
可以使用PythonGitPython库来获取两个分支中指定文件的差异,并使用Python的difflib库生成差异报告。 以下是一个简单的代码示例: ```python import git import difflib # 打开git仓库 repo = git.Repo('/path/to/repo') # 获取两个分支 branch1 = repo.branches['branch1'] branch2 = repo.branches['branch2'] # 获取指定文件的commit列表 file_commits1 = list(branch1.iter_commits(paths='/path/to/file')) file_commits2 = list(branch2.iter_commits(paths='/path/to/file')) # 获取两个分支的commit差异 commit_diff = set(file_commits1) - set(file_commits2) # 解析差异并生成报告 for commit in commit_diff: # 获取commit的文件差异 diff_index = commit.diff(commit.parents[0], paths='/path/to/file') # 打印commit信息 print('Commit:', commit.hexsha) print('Author:', commit.author.name, '<' + commit.author.email + '>') print('Date:', commit.authored_datetime) # 打印文件差异报告 for diff_item in diff_index: if diff_item.a_blob is None or diff_item.b_blob is None: continue # 获取文件内容 old_content = diff_item.a_blob.data_stream.read().decode('utf-8') new_content = diff_item.b_blob.data_stream.read().decode('utf-8') # 生成差异报告 diff_report = difflib.unified_diff(old_content.splitlines(), new_content.splitlines(), lineterm='', fromfile=diff_item.a_blob.path, tofile=diff_item.b_blob.path) # 打印差异报告 for line in diff_report: print(line) ``` 这个示例代码演示了如何使用GitPython库获取两个分支中指定文件的差异,并使用difflib库生成差异报告。您可以根据自己的需求修改代码来生成符合您需求的报告。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值