I made a Conventional Commits for Research! Please Review it! #194225
Closed
willdone-mt
started this conversation in
Discover: GitHub Best Practices
Replies: 1 comment 1 reply
-
|
Thank you for your interest in contributing to our community! We currently only accept discussions created through the GitHub UI using our provided discussion templates. Please re-submit your discussion by navigating to the appropriate category and using the template provided. This discussion has been closed because it was not submitted through the expected format. If you believe this was a mistake, please reach out to the maintainers. |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
After starting a research project on git, i think the commits also need to be neat and tidy like other software projects.
I could not find any research project GitHub repository to take example from [If there one, please let me know].
Because the existing Conventional Commits specification was designed specifically for software projects,
its popular types often fail to capture the unique nuances of scientific research.
Therefore, i made a Conventional Commits adaptation for research project
Summary
The Conventional Commits for Research specification is a mediumweight convention on top of commit messages,
specialized for research project stored in version control repositories.
It provides an easy set of rules for creating an explicit commit history;
which makes it easier to write automated tools on top of.
This convention adapted from already existing Conventional Commits,
[currently doesnt have any versioning to be dovetailed with].
This summary section is assuming the reader already familiar with Conventional Commits.
The commit message should be structured as follows:
The commit contains the same structural elements as Conventional Commits,
with addition and changes in types, scopes, and breaking change listed below.
This was made to record changes in research process:
Universal commit types
feat: same as Conventional Commits; also used in research commits for newly acquired raw data.fix: same as Conventional Commits; data can also have bugs and fixes.style: same as formerly Angular Convention's.docs: same as Angular Convention's; used in research commits only for project management (non-scientific) documents.chore: same as formerly Angular Convention's.ci: same as Angular Convention's.revert: same as Conventional Commits.Commit types only for changes in research
process: for data processing.analsynt: for data discussing/analyzing/synthesizing.dissem: dissemination documents.method: materials and methods protocols/documents.expt: not-as-a-research experiments, tests, validation, and verification of data and methods.research: to group research-only type if the project is code-focused.Commit types only for changes in code [used in research]
code: to group typefeat,fix,refactor,perf, andstyle. These grouped types can have their own commit.devtool: to group typebuildandtest. These grouped types can have their own commit.Scope. Even though scope field is optional, there are few recommended predefined scope that can be used
featandfix, scopedatais to represent the new or fixed data.process, its scope should represent the stage/list of data processingdissem, its scope should represent the types of dissemination, or part/chapter of the manuscriptmethod, its scope should represent the stage/list of method being usedBreaking changes
In research, a BREAKING CHANGE is any modification to data processing, methods, or analysis workflow/procedure
that invalidates prior results.
NOTICE
The full document are written here https://gist.github.com/willdone-mt/fdbad17dc66d90b54552b4e5b82a4f2e
Please share your review, suggestion, and thought in this discussion! here!
THANK YOU VERY MUCH!
Beta Was this translation helpful? Give feedback.
All reactions