@@ -65,6 +65,31 @@ The plugin uses a complex CI setup:
6565- ** Environment variables** : ` TESTSPACE ` , ` PATH_TO_REDMINE ` , ` PATH_TO_PLUGIN ` must be absolute paths
6666- Fixtures are automatically copied from ` test/fixtures/ ` to Redmine's test environment
6767
68+ ### Git Workflow
69+ - ** All commits must use English commit messages** - Never use Japanese or other languages
70+ - Follow conventional commit format: "verb + brief description"
71+ - Examples: "Add macro functionality", "Fix permission check", "Update documentation"
72+ - Keep commit messages concise (under 50 characters for subject line)
73+ - All pull requests must target the ` develop ` branch
74+
75+ ### Code Documentation
76+ - ** All source code comments must be written in English** - Never use Japanese or other languages
77+ - Use clear, concise English for inline comments, method documentation, and code explanations
78+ - Follow Ruby documentation conventions using YARD format when appropriate
79+ - Examples of good comments:
80+ ``` ruby
81+ # Check if the plugin module is enabled for the current project
82+ return nil unless WikiExtensionsUtil .is_enabled?(@project ) if @project
83+
84+ # Register the macro with Redmine's wiki formatting system
85+ Redmine ::WikiFormatting ::Macros .register do
86+ desc " Display page access count with optional reset functionality"
87+ macro :count do |obj , args |
88+ # Implementation details...
89+ end
90+ end
91+ ```
92+
6893## Coding Patterns
6994
7095### Plugin Module Enablement
0 commit comments