【Github】コミットメッセージ/ログを綺麗に書くコツ
コミットメッセージは "将来の同僚のため" に書く
3ヶ月後にチームに入った人が理解できる内容 になっているのが理想。チームメンバーが分かる内容で満足すると、暗黙的な業務知識に依存したコミットメッセージになっていることがあるので注意。
XXXを追加/変更/削除しましただけではダメ
油断するとこういうメッセージを書いてしまいがち。
git-diff の内容を日本語で書いただけだと意味がないので、コミットメッセージで付加価値がつくように気をつける。
コミットした後に見直す
diffの全てをコミットメッセージで説明できているか?
関係ない変更が混ざっていないか?
コミットメッセージを読んで「なぜ?」と自問する
更に Why を深掘りして書けないか?
参考にしたURLを残す
自分が知らなかったことは、たぶん他メンバーも知らない可能性が高い。
コードを書いていて参考になったWebページがあったら、コミットメッセージに残しておく。
よく使うコミットログ用例集
作者は初学者の為、始めは -m"first_commit" や-m "〇〇_update"などのコミットメッセージが基本でしたが、最近はもっとカッコイイログを残したいと思い、調べてまとめた物が以下です。
オプションやフラグ、メニューを追加した
Add -enable-experimental-nested-generic-types frontend flag
Add --main-process flag to run specs in the main process
Add Throws flag and ThrowsLoc to AbstractFunctionDecl
Add "event" parameter for "click" handler of MenuItem
Add File > Exit menu on Windows
ファイルを追加した
Add npm start script
Add build script
Add SkUserConfig.h with blank SkDebugf macro
メソッドや機能を追加した
Add TypeLowering::hasFixedSize()
Add overflow scrolling
Add convenience API for demangling
Add a typealias to avoid a build ordering dependency between projects
Add a helper method mayHaveOpenedArchetypeOperands to SILInstruction
実装を別のものへ切り替えた
Use args.resourcePath instead of args.devResourcePath
Use arrays instead of while loops
Use auto instead of repeating explicit class names
Use weak pointer instead of manual bookkeeping
Change all uses of 'CInt' to 'Int32' in the SDK overlay
Change Integer#year to return a Fixnum instead of a Float to improve consistency
新しく何かに対応した/機能上の制約を取り払った
Add support for closure contexts to readMetadataFromInstance()
Add support for activating and deactivating package-specific keymaps
Add support for launching HTML files directly
Add support for allocators that require tensors with zero
Make it possible to call reflect multiple times
Make it possible to set a data type for variables that come out of constants
Allow atom-pane to be shrunk independently of its contents' width
Allow null TextEditorComponent::domNode during visibility check
何かを使うようにした
Use const for util require
Use FoldingSetNode for ProtocolType
Use unique text editor title in window and tab titles
Use an empty object if metadata is ~null
Use target_link_libraries for fat executable dependencies
Use existing flatMapToOptionalTests dataset
より好ましい実装に改良した
Make the clone function more generic
Make IO faster for v8 compile cache
Make model constructor argument to addViewProvider optional
Make Browser::Quit more robust
Make Menu.getApplicationMenu() public
Improve incompatible native module error message
Improve readability of multi-line command
Improve folds behavior when duplicating lines
Improve deprecated message on webPreferences options
何かを出来ない/しないようにした
Don't bail reading a metadata instance if swift_isaMask isn't available
Don't exit until the parent asks for an instance
Don't include Parent pointer in Nominal/BoundGeneric TypeRef uniquing
Don't use MatchesExtension for matching filters
Don't use ES6 class for AutoUpdater windows class
Don't use MatchesExtension for matching filters
Avoid distinct if a subquery has already materialized
Avoid infinite recursion when bad values are passed to tz aware fields
オブジェクトの内容や挙動を確認しやすくした
Emit capture descriptors in their own section
Emit field metadata for @objc classes
Emit reflection info for protocols
Assertを追加した
Add assert for role with app name in label
Add assertions for no available bookmark
Add asserts for properties
不要なコードを除去した
Remove some dead code
Remove some unused enum declaration
Remove unused variable
Remove unnecessary line feeds
Remove trailing whitespace
Remove debug statement
Remove redundant mapType{Into,OutOf}Context() calls
コードを移動した
Move function signature analysis to a Util
Move markInvalidGenericSignature() to a method on TypeChecker
Move diagnostic for stored properties in protocols from type checking to validation
Move Doxygen converter into a proper MarkupASTNode visitor
Move Module require to top
名前を修正した
Rename environment -> environmentHelpers
Rename watchProjectPath to watchProjectPaths
Rename generic arguments
s/grammarName/grammar
fullVersion -> writeFullVersion
小さなバグやタイポを修正した, 警告を潰した
Fix typos
Fix a typo
Fix a test
Fix typo in DevTools Extensions tutorial
Fix DownloadingState typo
Fix includes order
Fix mistake in tvOS availability
Fix cpplint warnings
Fix wrong markdown
Add missing return
Add missing period in comment
バグや好ましくない挙動を修正した
Fix a memory leak in FSO
Fix lifetime issues in ManagedBuffer.value
Fix mangling for nested generic types
Fix memory corruption in another circularity check
Fix thread-unsafety in Process.Argument initialization
Fix "Object has been destroyed" error in "page-title-updated" event
Make Error.prepareStackTrace read-only (again)
Make string slicing tests standalone
Make sure showing success dialogs works correctly
Make sure to emit closure bodies only once
Make sure all native resources get freed on exit
Make sure temp file will be cleaned up when base::Move fails
テスト、コメント、ドキュメントを追加した
Add tests for pending pane items
Add validation test for projecting existentials
Add a basic test for opening an editor in largeFileMode if >= 2MB
Add specs for moveSelectionLeft()
Add failing spec for Menu.buildFromTemplate
Add comment about map key/values
Add TODO about blinkFeatures -> enableBlinkFeatures
Add a design-decisions section to the CONTRIBUTING guide
Add style.less examples
Add docs for app.getLocale()
Add documentation for --proxy-bypass-list
テストを削除した
Remove a redundant test
Remove an empty test
テスト、コメントを修正した
Fix comment
Fix outdated comment
Fix failing specs on Windows
Fix PersistentVector test for powerpc64{le}
Update specs for deferred activation hooks
Update successor/predecessor in validation tests
Update some tests to use LifetimeTracked instead of hand-rolled canaries
ドキュメントを修正した
Update README.md
Update docs for marker callback
Update documentation for mark*Position
Update link to solarized-dark-syntax
Improve documentation of ses.cookies.set()
Improve readability in CSRF section of guide
Improve spec description
この記事が気に入ったらサポートをしてみませんか?