  Commit messages explain code changes in a commit and facilitate collaboration
among developers. Several commit message generation approaches have been
proposed; however, they exhibit limited success in capturing the context of
code changes. We propose Comet (Context-Aware Commit Message Generation), a
novel approach that captures context of code changes using a graph-based
representation and leverages a transformer-based model to generate high-quality
commit messages. Our proposed method utilizes delta graph that we developed to
effectively represent code differences. We also introduce a customizable
quality assurance module to identify optimal messages, mitigating subjectivity
in commit messages. Experiments show that Comet outperforms state-of-the-art
techniques in terms of bleu-norm and meteor metrics while being comparable in
terms of rogue-l. Additionally, we compare the proposed approach with the
popular gpt-3.5-turbo model, along with gpt-4-turbo; the most capable GPT
model, over zero-shot, one-shot, and multi-shot settings. We found Comet
outperforming the GPT models, on five and four metrics respectively and provide
competitive results with the two other metrics. The study has implications for
researchers, tool developers, and software developers. Software developers may
utilize Comet to generate context-aware commit messages. Researchers and tool
developers can apply the proposed delta graph technique in similar contexts,
like code review summarization.
