Se a saída do comando grep
aparecer assim,
$ git log | grep path/to/file.cpp/.h
modified: path/to/file.cpp/.h - 1) change1 , 2) change2, etc......
modified: path/to/file.cpp/.h - 1) change1 , 2) change2, etc......
modified: path/to/file.cpp/.h - 1) change1 , 2) change2, etc......
Então você pode canalizá-lo para o comando abaixo awk para produzir a saída desejada,
git log | grep path/to/file.cpp/.h | awk -v RS='[-,]' '{print}'
Exemplo:
$ cat aa
modified: path/to/file.cpp/.h - 1) change1 , 2) change2, etc......
modified: path/to/file.cpp/.h - 1) change1 , 2) change2, etc......
modified: path/to/file.cpp/.h - 1) change1 , 2) change2, etc......
$ awk -v RS='[-,]' '{print}' aa
modified: path/to/file.cpp/.h
1) change1
2) change2
etc......
modified: path/to/file.cpp/.h
1) change1
2) change2
etc......
modified: path/to/file.cpp/.h
1) change1
2) change2
etc......