OSS: Difference between revisions
Lsokolowski1 (talk | contribs) Created page with "{{Draft}} Category:private ;title: OSS Training Course ;author: Lukasz Sokolowski == OSS == OSS Training Materials {{Can I use your material}} == Introduction == * Code management, versioning, and licensing * Automation and code quality (best practices) * Continuous Integration (CI) on GitHub/GitLab * Automated testing (unit, integration, end-to-end) * Changelog (Keep a Changelog, Conventional Commits) * Issue management and roadmap * Best practices in issue cr..." |
Lsokolowski1 (talk | contribs) |
||
| Line 29: | Line 29: | ||
== Code management, versioning, and licensing == | == Code management, versioning, and licensing == | ||
Code management | '''Code management''' | ||
* systematic handling of source code throughout its lifecycle | * '''systematic''' handling of '''source code''' throughout its '''lifecycle''' | ||
* including: tracking changes, organizing files, and enabling collaboration | * including: tracking changes, organizing files, and enabling collaboration | ||
* ensures code is reliable, traceable, and maintainable across teams and over time | * ensures code is reliable, traceable, and maintainable across teams and over time | ||
Versioning | '''Versioning''' | ||
* | * assigning '''unique''' identifiers to different '''states''' of a codebase | ||
* developers can track modifications, revert to previous versions, and understand who made changes and why | * ''developers'' can '''track''' modifications, '''revert''' to previous versions, and understand '''who made changes and why''' | ||
* this is foundational for collaboration, debugging, and ensuring code quality | * this is '''foundational''' for collaboration, debugging, and ensuring '''code quality''' | ||
Licensing governs how software and its source code can be used, modified, and distributed | '''Licensing''' | ||
* governs how software and its source code can be used, modified, and distributed | |||
* Open-source tools like Git are released under permissive licenses | |||
** such as the '''GNU General Public License (GPL) version 2.0''' - it guarantees users the freedom to share and modify the software | |||
* However, organizations must consider licensing implications | |||
** when using version control platforms - especially with AI features | |||
** public repositories may be used to train models | |||
** potentially raising intellectual property concerns | |||
Key tools like GitHub, GitLab, and Bitbucket support both centralized (CVCS) and distributed (DVCS) version control, with Git being the most widely adopted DVCS. These platforms enable modern workflows such as GitOps, CI/CD pipelines, and pull request-based code reviews, enhancing development speed and system reliability. | Key tools like GitHub, GitLab, and Bitbucket support both centralized (CVCS) and distributed (DVCS) version control, with Git being the most widely adopted DVCS. These platforms enable modern workflows such as GitOps, CI/CD pipelines, and pull request-based code reviews, enhancing development speed and system reliability. | ||
Revision as of 20:52, 12 February 2026
THIS IS A DRAFT
This text may not be complete.
- title
- OSS Training Course
- author
- Lukasz Sokolowski
OSS
OSS Training Materials
Copyright Notice
Copyright © 2004-2026 by NobleProg Limited All rights reserved.
This publication is protected by copyright, and permission must be obtained from the publisher prior to any prohibited reproduction, storage in a retrieval system, or transmission in any form or by any means, electronic, mechanical, photocopying, recording, or likewise.
Introduction
- Code management, versioning, and licensing
- Automation and code quality (best practices)
- Continuous Integration (CI) on GitHub/GitLab
- Automated testing (unit, integration, end-to-end)
- Changelog (Keep a Changelog, Conventional Commits)
- Issue management and roadmap
- Best practices in issue creation (templates, labels, milestones)
- Documentation
- Effective README: objectives, installation, usage, contributions
- Contributing Guide (CONTRIBUTING.md)
- API documentation (Swagger, Sphinx, Docusaurus, etc.)
Intro Con't
- TODO
Code management, versioning, and licensing
Code management
- systematic handling of source code throughout its lifecycle
- including: tracking changes, organizing files, and enabling collaboration
- ensures code is reliable, traceable, and maintainable across teams and over time
Versioning
- assigning unique identifiers to different states of a codebase
- developers can track modifications, revert to previous versions, and understand who made changes and why
- this is foundational for collaboration, debugging, and ensuring code quality
Licensing
- governs how software and its source code can be used, modified, and distributed
- Open-source tools like Git are released under permissive licenses
- such as the GNU General Public License (GPL) version 2.0 - it guarantees users the freedom to share and modify the software
- However, organizations must consider licensing implications
- when using version control platforms - especially with AI features
- public repositories may be used to train models
- potentially raising intellectual property concerns
Key tools like GitHub, GitLab, and Bitbucket support both centralized (CVCS) and distributed (DVCS) version control, with Git being the most widely adopted DVCS. These platforms enable modern workflows such as GitOps, CI/CD pipelines, and pull request-based code reviews, enhancing development speed and system reliability.