What Makes a Good Commit Message?

Yingchen Tian, Yuxia Zhang, Klaas Jan Stol, Lin Jiang, Hui Liu*

*此作品的通讯作者

科研成果: 书/报告/会议事项章节会议稿件同行评审

30 引用 (Scopus)

摘要

A key issue in collaborative software development is communication among developers. One modality of communication is a commit message, in which developers describe the changes they make in a repository. As such, commit messages serve as an 'audit trail' by which developers can understand how the source code of a project has changed-and why. Hence, the quality of commit messages affects the effectiveness of communication among developers. Commit messages are often of poor quality as developers lack time and motivation to craft a good message. Several automatic approaches have been proposed to generate commit messages. However, these are based on uncurated datasets including considerable proportions of poorly phrased commit messages. In this multi-method study, we first define what constitutes a 'good' commit message, and then establish what proportion of commit messages lack information using a sample of almost 1,600 messages from five highly active open source projects. We find that an average of circa 44% of messages could be improved, suggesting the use of uncurated datasets may be a major threat when commit message generators are trained with such data. We also observe that prior work has not considered semantics of commit messages, and there is surprisingly little guidance available for writing good commit messages. To that end, we develop a taxonomy based on recurring patterns in commit messages' expressions. Finally, we investigate whether 'good' commit messages can be automatically identified; such automation could prompt developers to write better commit messages.

源语言英语
主期刊名Proceedings - 2022 ACM/IEEE 44th International Conference on Software Engineering, ICSE 2022
出版商IEEE Computer Society
2389-2401
页数13
ISBN(电子版)9781450392211
DOI
出版状态已出版 - 2022
活动44th ACM/IEEE International Conference on Software Engineering, ICSE 2022 - Pittsburgh, 美国
期限: 22 5月 202227 5月 2022

出版系列

姓名Proceedings - International Conference on Software Engineering
2022-May
ISSN(印刷版)0270-5257

会议

会议44th ACM/IEEE International Conference on Software Engineering, ICSE 2022
国家/地区美国
Pittsburgh
时期22/05/2227/05/22

指纹

探究 'What Makes a Good Commit Message?' 的科研主题。它们共同构成独一无二的指纹。

引用此