Automatically Generating Commit Messages from Diffs using Neural Machine Translation
Not on the map. Why?
Abstract (arXiv)
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.
Key facts. Cited by 42 papers in the map (data through 7 Oct 2026). First posted on arXiv 30 Aug 2017.
Builds on
No reference list yet.
Built on by
Citing papers per year: 2020: 1; 2021: 12; 2022: 8; 2023: 8; 2024: 5; 2025: 6; 2026: 2.
42 papers.
Sort:
By area:
- 2020Retrieval-Augmented Generation for Code Summarization via Hybrid GNNcited by 89
- 2022Revise and Resubmit: An Intertextual Model of Text-based Collaboration in Peer Reviewcited by 37
- 2023Distilled GPT for Source Code Summarizationcited by 30
- 2021Code Structure Guided Transformer for Source Code Summarizationcited by 29
- 2021CodeTrans: Towards Cracking the Language of Silicon's Code Through Self-Supervised Deep Learning and High Performance Computingcited by 28
- 2022RACE: Retrieval-Augmented Commit Message Generationcited by 27
- 2021Project-Level Encoding for Neural Source Code Summarization of Subroutinescited by 24
- 2021A Survey on Machine Learning Techniques for Source Code Analysiscited by 23
- 2021On the Evaluation of Commit Message Generation Models: An Experimental Studycited by 20
- 2022NPC: Neuron Path Coverage via Characterizing Decision Logic of Deep Neural Networkscited by 17
- 2021Shellcode_IA32: A Dataset for Automatic Shellcode Generationcited by 16
- 2021CommitBERT: Commit Message Generation Using Pre-Trained Programming Language Modelcited by 16
30 more
- 2023From Commit Message Generation to History-Aware Commit Message Completioncited by 16
- 2022Source Code Summarization with Structural Relative Position Guided Transformercited by 14
- 2025From Code Foundation Models to Agents and Applications: A Comprehensive Survey and Practical Guide to Code Intelligencecited by 13
- 2025The Automated LLM Speedrunning Benchmark: Reproducing NanoGPT Improvementscited by 12
- 2024KADEL: Knowledge-Aware Denoising Learning for Commit Message Generationcited by 10
- 2021Leveraging Unsupervised Learning to Summarize APIs Discussed in Stack Overflowcited by 9
- 2023Pitfalls in Language Models for Code Intelligence: A Taxonomy and Surveycited by 9
- 2024CommitBench: A Benchmark for Commit Message Generationcited by 8
- 2022CommitBART: A Large Pre-trained Model for GitHub Commitscited by 6
- 2022On the Evaluation of NLP-based Models for Software Engineeringcited by 5
- 2025GitGoodBench: A Novel Benchmark For Evaluating Agentic Performance On Gitcited by 5
- 2023An Empirical Investigation into the Use of Image Captioning for Automated Software Documentationcited by 4
- 2021Unsupervised Learning of General-Purpose Embeddings for Code Changescited by 3
- 2023CCRep: Learning Code Change Representations via Pre-Trained Code Model and Query Backcited by 3
- 2024COMET: Generating Commit Messages using Delta Graph Context Representationcited by 3
- 2024CSA-Trans: Code Structure Aware Transformer for ASTcited by 3
- 2025CodeReviewQA: The Code Review Comprehension Assessment for Large Language Modelscited by 3
- 2021Jointly Learning to Repair Code and Generate Commit Messagecited by 2
- 2023Statement-based Memory for Neural Source Code Summarizationcited by 2
- 2023A Full-fledged Commit Message Quality Checker Based on Machine Learningcited by 2
- 2024Automatic Pull Request Description Generation Using LLMs: A T5 Model Approachcited by 2
- 2021Assessing the Effectiveness of Syntactic Structure to Learn Code Edit Representationscited by 1
- 2025CodeFuse-CommitEval: Towards Benchmarking LLM's Power on Commit Message and Code Change Inconsistency Detectioncited by 1
- 2021A Sketch-Based Neural Model for Generating Commit Messages from Diffscited by 0
- 2022Can We Generate Shellcodes via Natural Language? An Empirical Studycited by 0
- 2022Preprocessing Source Code Comments for Linguistic Modelscited by 0
- 2023Sparse Attention-Based Neural Networks for Code Classificationcited by 0
- 2025CoRaCMG: Contextual Retrieval-Augmented Framework for Commit Message Generationcited by 0
- 2026BatCoder: Self-Supervised Bidirectional Code-Documentation Learning via Back-Translationcited by 0
- 2026Conventional Commit Classification using Large Language Models and Prompt Engineeringcited by 0
- 2026Conventional Commit Classification using Large Language Models and Prompt Engineering3 May 2026
- 2026BatCoder: Self-Supervised Bidirectional Code-Documentation Learning via Back-Translation30 Jan 2026
- 2025CodeFuse-CommitEval: Towards Benchmarking LLM's Power on Commit Message and Code Change Inconsistency Detection25 Nov 2025
- 2025From Code Foundation Models to Agents and Applications: A Comprehensive Survey and Practical Guide to Code Intelligence23 Nov 2025
- 2025CoRaCMG: Contextual Retrieval-Augmented Framework for Commit Message Generation22 Sep 2025
- 2025The Automated LLM Speedrunning Benchmark: Reproducing NanoGPT Improvements27 Jun 2025
- 2025GitGoodBench: A Novel Benchmark For Evaluating Agentic Performance On Git28 May 2025
- 2025CodeReviewQA: The Code Review Comprehension Assessment for Large Language Models20 Mar 2025
- 2024Automatic Pull Request Description Generation Using LLMs: A T5 Model Approach1 Aug 2024
- 2024CSA-Trans: Code Structure Aware Transformer for AST7 Apr 2024
- 2024CommitBench: A Benchmark for Commit Message Generation8 Mar 2024
- 2024COMET: Generating Commit Messages using Delta Graph Context Representation2 Feb 2024
30 more
- 2024KADEL: Knowledge-Aware Denoising Learning for Commit Message Generation16 Jan 2024
- 2023Sparse Attention-Based Neural Networks for Code Classification11 Nov 2023
- 2023Pitfalls in Language Models for Code Intelligence: A Taxonomy and Survey27 Oct 2023
- 2023A Full-fledged Commit Message Quality Checker Based on Machine Learning9 Sep 2023
- 2023Distilled GPT for Source Code Summarization28 Aug 2023
- 2023From Commit Message Generation to History-Aware Commit Message Completion15 Aug 2023
- 2023Statement-based Memory for Neural Source Code Summarization21 Jul 2023
- 2023CCRep: Learning Code Change Representations via Pre-Trained Code Model and Query Back8 Feb 2023
- 2023An Empirical Investigation into the Use of Image Captioning for Automated Software Documentation3 Jan 2023
- 2022Preprocessing Source Code Comments for Linguistic Models23 Aug 2022
- 2022CommitBART: A Large Pre-trained Model for GitHub Commits17 Aug 2022
- 2022Revise and Resubmit: An Intertextual Model of Text-based Collaboration in Peer Review22 Apr 2022
- 2022On the Evaluation of NLP-based Models for Software Engineering31 Mar 2022
- 2022NPC: Neuron Path Coverage via Characterizing Decision Logic of Deep Neural Networks24 Mar 2022
- 2022RACE: Retrieval-Augmented Commit Message Generation5 Mar 2022
- 2022Source Code Summarization with Structural Relative Position Guided Transformer14 Feb 2022
- 2022Can We Generate Shellcodes via Natural Language? An Empirical Study8 Feb 2022
- 2021Leveraging Unsupervised Learning to Summarize APIs Discussed in Stack Overflow27 Nov 2021
- 2021A Survey on Machine Learning Techniques for Source Code Analysis18 Oct 2021
- 2021Jointly Learning to Repair Code and Generate Commit Message25 Sep 2021
- 2021On the Evaluation of Commit Message Generation Models: An Experimental Study12 Jul 2021
- 2021Assessing the Effectiveness of Syntactic Structure to Learn Code Edit Representations11 Jun 2021
- 2021Unsupervised Learning of General-Purpose Embeddings for Code Changes3 Jun 2021
- 2021CommitBERT: Commit Message Generation Using Pre-Trained Programming Language Model29 May 2021
- 2021Shellcode_IA32: A Dataset for Automatic Shellcode Generation27 Apr 2021
- 2021Code Structure Guided Transformer for Source Code Summarization19 Apr 2021
- 2021A Sketch-Based Neural Model for Generating Commit Messages from Diffs8 Apr 2021
- 2021CodeTrans: Towards Cracking the Language of Silicon's Code Through Self-Supervised Deep Learning and High Performance Computing6 Apr 2021
- 2021Project-Level Encoding for Neural Source Code Summarization of Subroutines22 Mar 2021
- 2020Retrieval-Augmented Generation for Code Summarization via Hybrid GNN9 Jun 2020
- 2022Revise and Resubmit: An Intertextual Model of Text-based Collaboration in Peer Reviewcited by 37
- 2023Distilled GPT for Source Code Summarizationcited by 30
- 2021Code Structure Guided Transformer for Source Code Summarizationcited by 29
- 2021CodeTrans: Towards Cracking the Language of Silicon's Code Through Self-Supervised Deep Learning and High Performance Computingcited by 28
- 2021Project-Level Encoding for Neural Source Code Summarization of Subroutinescited by 24
- 2021A Survey on Machine Learning Techniques for Source Code Analysiscited by 23
- 2021On the Evaluation of Commit Message Generation Models: An Experimental Studycited by 20
- 2022NPC: Neuron Path Coverage via Characterizing Decision Logic of Deep Neural Networkscited by 17
- 2021Shellcode_IA32: A Dataset for Automatic Shellcode Generationcited by 16
- 2021CommitBERT: Commit Message Generation Using Pre-Trained Programming Language Modelcited by 16
- 2023From Commit Message Generation to History-Aware Commit Message Completioncited by 16
- 2022Source Code Summarization with Structural Relative Position Guided Transformercited by 14
12 most cited of 36 All 36 (JSON)
- 2026BatCoder: Self-Supervised Bidirectional Code-Documentation Learning via Back-Translation30 Jan 2026
- 2025CodeFuse-CommitEval: Towards Benchmarking LLM's Power on Commit Message and Code Change Inconsistency Detection25 Nov 2025
- 2025The Automated LLM Speedrunning Benchmark: Reproducing NanoGPT Improvements27 Jun 2025
- 2025CodeReviewQA: The Code Review Comprehension Assessment for Large Language Models20 Mar 2025
- 2024Automatic Pull Request Description Generation Using LLMs: A T5 Model Approach1 Aug 2024
- 2024CSA-Trans: Code Structure Aware Transformer for AST7 Apr 2024
- 2024CommitBench: A Benchmark for Commit Message Generation8 Mar 2024
- 2024COMET: Generating Commit Messages using Delta Graph Context Representation2 Feb 2024
- 2024KADEL: Knowledge-Aware Denoising Learning for Commit Message Generation16 Jan 2024
- 2023Sparse Attention-Based Neural Networks for Code Classification11 Nov 2023
- 2023Pitfalls in Language Models for Code Intelligence: A Taxonomy and Survey27 Oct 2023
- 2023A Full-fledged Commit Message Quality Checker Based on Machine Learning9 Sep 2023
12 newest of 36 All 36 (JSON)