我正在尝试清理 git 日志中的重复行。不幸的是,开发人员不使用 rebase 命令,因此 git log 中存在许多重复的提交信息。
包含重复行的 Git 日志
TASK-1: awe
TASK-1 : aaa
TASK-1: aaa bbbb
TASK-2: aaaaa
TASK-3: 123
TASK-3 : 123 aaa
我需要保留第一行的任务编号,并将所有其他行从 git log 中删除,并使用相同的任务编号
预期结果
TASK-1: awe
TASK-2: aaaaa
TASK-3: 123
我尝试使用 sort 来获取 uniq 提交
git log --pretty=format:"%s " --no-merges | grep -oP --regexp="TASK-\K\d+" | sort -r | uniq
这个工作正常,所以我只得到任务编号,而没有提交消息。
1
2
3
但是当我将正则表达式扩展更改为--regexp=“^[TASK-]\^*.*”
它时,它会打印所有行。
有人可以帮我删除重复的行吗