Proceedings

Commit Message Generation for Source Code Changes

Download BibTeX Cite

Proceedings of the Twenty-Eighth International Joint Conference on Artificial Intelligence. Main track. Pages 3975-3981.

https://doi.org/10.24963/ijcai.2019/552

Abstract

Commit messages, which summarize the source code changes in natural language, are essential for program comprehension and software evolution understanding. Unfortunately, due to the lack of direct motivation, commit messages are sometimes neglected by developers, making it necessary to automatically generate such messages. State-of-the-art adopts learning based approaches such as neural machine translation models for the commit message generation problem. However, they tend to ignore the code structure information and suffer from the out-of-vocabulary issue. In this paper, we propose CoDiSum to address the above two limitations. In particular, we first extract both code structure and code semantics from the source code changes, and then jointly model these two sources of information so as to better learn the representations of the code changes. Moreover, we augment the model with copying mechanism to further mitigate the out-of-vocabulary issue. Experimental evaluations on real data demonstrate that the proposed approach significantly outperforms the state-of-the-art in terms of accurately generating the commit messages.

  1. [Buse and Weimer, 2010] Raymond PL Buse and Westley R Weimer. Automatically documenting program changes. In ASE, pages 33-42, 2010.
  2. [Cho et al., 2014] Kyunghyun Cho, Bart Van Merriënboer, Caglar Gulcehre, Dzmitry Bahdanau, Fethi Bougares, Holger Schwenk, and Yoshua Bengio. Learning phrase representations using rnn encoder-decoder for statistical machine translation. arXiv, 2014.
  3. [Chopra et al., 2016] Sumit Chopra, Michael Auli, and Alexander M Rush. Abstractive sentence summarization with attentive recurrent neural networks. In NAACL, pages 93-98, 2016.
  4. [Cortés-Coy et al., 2014] Luis Fernando Cortés-Coy, Mario Linares-Vásquez, Jairo Aponte, and Denys Poshyvanyk. On automatically generating commit messages via sum- marization of source code changes. In SCAM, pages 275- 284, 2014.
  5. [Denkowski and Lavie, 2014] Michael Denkowski and Alon Lavie. Meteor universal: Language specific translation evaluation for any target language. In Proceedings of the ninth workshop on statistical machine translation, pages 376-380, 2014.
  6. [Dyer et al., 2013] Robert Dyer, Hoan Anh Nguyen, Hridesh Rajan, and Tien N Nguyen. Boa: A language and infras- tructure for analyzing ultra-large-scale software reposito- ries. In ICSE, pages 422-431, 2013.
  7. [Hindle et al., 2012] Abram Hindle, Earl T Barr, Zhendong Su, Mark Gabel, and Premkumar Devanbu. On the natu- ralness of software. In ICSE, pages 837-847, 2012.
  8. [Hu et al., 2018a] Xing Hu, Ge Li, Xin Xia, David Lo, and Zhi Jin. Deep code comment generation. In ICPC, pages 200-210, 2018.
  9. [Hu et al., 2018b] Xing Hu, Ge Li, Xin Xia, David Lo, Shuai Lu, and Zhi Jin. Summarizing source code with transferred api knowledge. In IJCAI, pages 2269-2275, 2018. IJCAI
  10. [Huang et al., 2017] Yuan Huang, Qiaoyang Zheng, Xiang- ping Chen, Yingfei Xiong, Zhiyong Liu, and Xiaonan Luo. Mining version control system for automatically generat- ing commit comment. In ESEM, pages 414-423, 2017.
  11. [Iyer et al., 2016] Srinivasan Iyer, Ioannis Konstas, Alvin Cheung, and Luke Zettlemoyer. Summarizing source code using a neural attention model. In ACL, pages 2073-2083, 2016.
  12. [Jiang and McMillan, 2017] Siyuan Jiang and Collin McMillan. Towards automatic generation of short summaries of commits. In ICPC, pages 320-323, 2017.
  13. [Jiang et al., 2017] Siyuan Jiang, Ameer Armaly, and Collin McMillan. Automatically generating commit messages from diffs using neural machine translation. In ASE, pages 135-146, 2017.
  14. [Linares-Vásquez et al., 2015] Mario Linares-Vásquez, Luis Fernando Cortés-Coy, Jairo Aponte, and Denys Poshyvanyk. Changescribe: A tool for automatically generating commit messages. In ICSE, pages 709-712, 2015.
  15. [Liu et al., 2018] Zhongxin Liu, Xin Xia, Ahmed E Hassan, David Lo, Zhenchang Xing, and Xinyu Wang. Neural- machine-translation-based commit message generation: how far are we? In ASE, pages 373-384, 2018.
  16. [Loyola et al., 2017] Pablo Loyola, Edison Marrese-Taylor, and Yutaka Matsuo. A neural architecture for generating natural language descriptions from source code changes. In ACL, pages 287-292, 2017.
  17. [Loyola et al., 2018] Pablo Loyola, Edison Marrese-Taylor, Jorge Balazs, Yutaka Matsuo, and Fumiko Satoh. Con- tent aware source code change description generation. In INLG, pages 119-128, 2018.
  18. [Movshovitz-Attias and Cohen, 2013] Dana Movshovitz- Attias and William W Cohen. Natural language models for predicting programming comments. In ACL, pages 35-40, 2013.
  19. [Nallapati et al., 2016] Ramesh Nallapati, Bowen Zhou, Ci- cero dos Santos, Caglar Gulcehre, and Bing Xiang. Ab- stractive text summarization using sequence-to-sequence rnns and beyond. In CoNLL, pages 280-290, 2016.
  20. [Oda et al., 2015] Yusuke Oda, Hiroyuki Fudaba, Graham Neubig, Hideaki Hata, Sakriani Sakti, Tomoki Toda, and Satoshi Nakamura. Learning to generate pseudo-code from source code using statistical machine translation (t). In ASE, pages 574-584, 2015.
  21. [Papineni et al., 2002] Kishore Papineni, Salim Roukos, Todd Ward, and Wei-Jing Zhu. Bleu: a method for auto- matic evaluation of machine translation. In Proceedings of the 40th annual meeting on association for computational linguistics, pages 311-318. Association for Computational Linguistics, 2002.
  22. [Reiter and Dale, 1997] Ehud Reiter and Robert Dale. Build- ing applied natural language generation systems. Natural Language Engineering, 3(1):57-87, 1997.
  23. [Rush et al., 2015] Alexander M Rush, Sumit Chopra, and Jason Weston. A neural attention model for abstractive sentence summarization. In EMNLP, pages 379-389, 2015.
  24. [See et al., 2017] Abigail See, Peter J Liu, and Christopher D Manning. Get to the point: Summarization with pointer- generator networks. In ACL, pages 1073-1083, 2017.
  25. [Shen et al., 2016] Jinfeng Shen, Xiaobing Sun, Bin Li, Hui Yang, and Jiajun Hu. On automatic summarization of what and why information in source code changes. In COMP- SAC, volume 1, pages 103-112, 2016.
  26. [Sridhara et al., 2010] Giriprasad Sridhara, Emily Hill, Di- vya Muppaneni, Lori Pollock, and K Vijay-Shanker. To- wards automatically generating summary comments for java methods. In ASE, pages 43-52, 2010.

References were extracted automatically from the PDF and may contain errors.

Welcome Future Conferences AI Journal Division IJCAI Proceedings About IJCAI IJCAI Awards