Automatically Generating Commit Messages from Diffs using Neural Machine Translation

08/30/2017
by   Siyuan Jiang, et al.
0

Commit messages are a valuable resource in comprehension of software evolution, since they provide a record of changes such as feature additions and bug repairs. Unfortunately, programmers often neglect to write good commit messages. Different techniques have been proposed to help programmers by automatically writing these messages. These techniques are effective at describing what changed, but are often verbose and lack context for understanding the rationale behind a change. In contrast, humans write messages that are short and summarize the high level rationale. In this paper, we adapt Neural Machine Translation (NMT) to automatically "translate" diffs into commit messages. We trained an NMT algorithm using a corpus of diffs and human-written commit messages from the top 1k Github projects. We designed a filter to help ensure that we only trained the algorithm on higher-quality commit messages. Our evaluation uncovered a pattern in which the messages we generate tend to be either very high or very low quality. Therefore, we created a quality-assurance filter to detect cases in which we are unable to produce good messages, and return a warning instead.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
02/07/2022

What Makes a Good Commit Message?

A key issue in collaborative software development is communication among...
research
11/26/2019

Generating Commit Messages from Git Diffs

Commit messages aid developers in their understanding of a continuously ...
research
10/05/2020

On the Relevance of Cross-project Learning with Nearest Neighbours for Commit Message Generation

Commit messages play an important role in software maintenance and evolu...
research
04/27/2023

Improving the Quality of Commit Messages in Students' Projects

Commit messages play a crucial role in collaborative software developmen...
research
04/08/2021

A Sketch-Based Neural Model for Generating Commit Messages from Diffs

Commit messages have an important impact in software development, especi...
research
04/26/2022

Decoding noisy messages: a method that just shouldn't work

This paper is about receiving text messages through a noisy and costly l...
research
04/23/2017

Translating Neuralese

Several approaches have recently been proposed for learning decentralize...

Please sign up or login with your details

Forgot password? Click here to reset