euroargodev / euroargodev/argopy
Developer Certificate of Origin (DCO) enforcement
- Dominant language
- Python
- Stars
- 229
- Forks
- 52
- Avg merge
- 2d 10h
- Merged PRs (30d)
- 8
Description
In order to follow [FLOSS good practices](https://github.com/coreinfrastructure/best-practices-badge/blob/main/docs/other.md#basics), we should also consider how to implement [Developer Certificate of Origin (DCO)](https://developercertificate.org/) enforcement
> For any Open Source project, it is important that any contributions contain code that can legally be contributed to the project, and that the project has the right to distribute it under its license
Following this [discussion thread](https://github.com/keycloak/keycloak/discussions/24406), this could easily be achieved by following the [DCO](https://developercertificate.org/) approach, which requires contributors to sign-off on individual commits that are part of a contribution.
This is now [compulsory](https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-the-commit-signoff-policy-for-your-repository) when using the Github interface
And this is easily done by using the --signoff (-s) option when creating a commit. For example:
```
git commit -s -m "Description of the commit"
```
This adds a Signed-off-by statement at the end of the commit, where the contributor certifies they are following the agreement laid out in the [Developer Certificate of Origin (DCO)](https://developercertificate.org/).
I could note that a sign-off on a commit has a particular meaning, and to sign off a commit must be a conscious decision. Therefore, we are required to type the -s every time
Contributor guide
Research direction
Review the linked Developer Certificate of Origin specification, GitHub commit sign-off policy, and the referenced discussion thread first. Define the repository's enforcement approach and document the contributor-facing requirement so accepted contributions consistently include the required Signed-off-by statement.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- git, github
- Domain
- developer-experience
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 32/100