Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
contribute:dev:git:start [2020/06/19 13:12] – [GitLab Forks and Merge Requests] skunnyk | contribute:dev:git:start [2024/04/14 10:35] (current) – [GitLab Forks and Merge Requests] gael | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ~~NOTOC~~ | ||
====== Using Git within the Xfce development workflow ====== | ====== Using Git within the Xfce development workflow ====== | ||
* **[[start# | * **[[start# | ||
* **[[start# | * **[[start# | ||
- | * **[[start# | + | * **[[start# |
+ | * **[[start# | ||
* **[[start# | * **[[start# | ||
* **[[start# | * **[[start# | ||
* **[[start# | * **[[start# | ||
* **[[: | * **[[: | ||
+ | |||
+ | ---- | ||
===== Introduction ===== | ===== Introduction ===== | ||
Xfce uses Git as distributed version control system (DCVS) for all the code contributed by developers. On this page, we will explain the basics and initial setup needed to get started developing for Xfce. However, if you want to know it all about Git, look at the following websites for a more in depth examination of Git and its usage: | Xfce uses Git as distributed version control system (DCVS) for all the code contributed by developers. On this page, we will explain the basics and initial setup needed to get started developing for Xfce. However, if you want to know it all about Git, look at the following websites for a more in depth examination of Git and its usage: | ||
+ | |||
+ | ---- | ||
=== Git resources === | === Git resources === | ||
Line 26: | Line 32: | ||
* **[[github|GitHub mirror]]** -- What we do with the GitHub mirror of the Xfce repositories. | * **[[github|GitHub mirror]]** -- What we do with the GitHub mirror of the Xfce repositories. | ||
+ | |||
+ | ---- | ||
===== Setting your Git credentials ===== | ===== Setting your Git credentials ===== | ||
Line 40: | Line 48: | ||
[[|Back To Top]] | [[|Back To Top]] | ||
---- | ---- | ||
+ | |||
===== Git usage example on an Xfce project ===== | ===== Git usage example on an Xfce project ===== | ||
Line 69: | Line 78: | ||
* Write commit messages using the standard Git message format. | * Write commit messages using the standard Git message format. | ||
* Don't fear the rebase (against the Xfce master branch): you should fix the merge problems, not the developer. | * Don't fear the rebase (against the Xfce master branch): you should fix the merge problems, not the developer. | ||
+ | * Read the guidelines below | ||
[[|Back To Top]] | [[|Back To Top]] | ||
Line 74: | Line 84: | ||
---- | ---- | ||
+ | |||
+ | ===== Commit Guidelines ===== | ||
+ | |||
+ | * The commit message is made of summary (first line), one empty line and the remaining lines are its description. | ||
+ | * Keep the summary short, aim for up to 72 characters. | ||
+ | * You're encouraged to write an extensive description when it makes sense, [[https:// | ||
+ | * Add reference to the related issue or merge request at the end of summary. | ||
+ | * Reference for an issue: " | ||
+ | * Reference for a merge request: "Add new app icon (!11)" | ||
+ | * When a commit relates to an issue and a merge request, only add the former to the summary and mention the latter in the description. | ||
+ | * Optionally Sign Off your commits (mandatory for Xfwm4!). | ||
+ | * GitLab' | ||
+ | * When making isolated changes, such as in a single part of the project or one of its plugins, please add a lowercase label as the summary prefix, examples: | ||
+ | * " | ||
+ | * " | ||
+ | * " | ||
+ | |||
+ | [[|Back To Top]] | ||
+ | |||
+ | |||
+ | ---- | ||
+ | |||
===== GitLab Forks and Merge Requests ===== | ===== GitLab Forks and Merge Requests ===== | ||
- | If you want to contribute code the best way is to get a contributor' | + | If you want to contribute code, the best way is to get a contributor' |
- | - Fork the project | + | - Ask for fork permissions [[/ |
- | - Clone your fork | + | - Fork the project |
- | - Create a new branch (try to use a descriptive name), don't use " | + | - Clone your fork locally |
+ | - **Create a new branch** (try to use a descriptive name), don't use " | ||
- Change and push your code to your fork/branch | - Change and push your code to your fork/branch | ||
- Start a merge request and [[https:// | - Start a merge request and [[https:// | ||
Line 88: | Line 121: | ||
---- | ---- | ||
+ | |||
===== Git rules on gitlab.xfce.org ===== | ===== Git rules on gitlab.xfce.org ===== | ||
Line 98: | Line 132: | ||
[[|Back To Top]] | [[|Back To Top]] | ||
---- | ---- | ||
+ | |||
===== Git repository description ===== | ===== Git repository description ===== | ||
Line 104: | Line 139: | ||
[[|Back To Top]] | [[|Back To Top]] | ||
---- | ---- | ||
+ | [[: |