patches and low-level development discussion
 help / color / mirror / code / Atom feed
cf19b3751e7e92e45bbd0f9d19b0dcf1d6d1cda4 blob 3246 bytes (raw)

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
 
= Working with Patches
:page-parent: Development
:page-nav_order: 1
:page-has_children: true

// SPDX-FileCopyrightText: 2022 Unikie
// SPDX-License-Identifier: GFDL-1.3-no-invariants-or-later OR CC-BY-SA-4.0

This tutorial assumes that you already have basic
https://git-scm.com/[git] experience.

Before beginning, you'll need to have a local git checkout of the
https://spectrum-os.org/git/[Spectrum source tree].  You'll also need
to have configured `git send-email` — a guide for this can be found at
https://git-send-email.io/.

== Making Changes

The process of making changes is similar to working on any git repository.

. Create a branch for your changes:
+
[source,shell]
----
git checkout -b fix-docs # for example
----
. Make changes in your editor.
. Stage and commit your changes:
+
[source,shell]
----
git add Documentation/first-patch.adoc # for example
git commit -s
----
+
TIP: The `-s` option adds a `Signed-off-by` line to the commit.  This
indicates your acceptance of the
https://spectrum-os.org/git/spectrum/tree/DCO-1.1.txt[Developer's
Certificate of Origin], which is mandatory for Spectrum patches.

== Submitting Changes

Once you're happy with how the commits on your branch look, run:

[source,shell]
----
git send-email --to devel@spectrum-os.org --confirm=always origin/main
----

For each message, you will be prompted for confirmation, and then the
change will be submitted to the Spectrum development mailing list.
They will appear shortly on the
https://spectrum-os.org/lists/hyperkitty/list/devel@spectrum-os.org/[web
interface].

[#cover-letter]
TIP: If you're submitting multiple changes, and you'd like to provide
an overall description for the whole series, you can add the
`--compose` option, which will prompt you to compose a "cover letter"
message that will be sent before all of your patches.

== Feedback

Once your patch has been submitted, wait for it to be reviewed.
Feedback, if any, will be sent as email replies to your submitted
patch.  You can respond to feedback in your mail client.

Use the *Reply All* button to sent your messages to the
mailing list as well as to the person who sent the feedback.

If you need to make changes to your patch and submit a new version,
use https://git-rebase.io/[`git rebase`] to create a new version of
your patch(es) and then submit it like this:

[source,shell]
----
git send-email -v2 --to devel@spectrum-os.org --confirm=always origin/main
----

The added `-v2` flag indicates that this is version two of your
patch set.  If your patches require more rounds of changes, submit
subsequent rounds with `-v3`, `-v4`, etc. as appropriate.

If you would like to describe what has changed from the previous version
of your patches, you can do so in a xref:cover-letter[cover letter]
as described above.

== Acceptance

Once your patch has been accepted, it will be applied to the upstream
Spectrum git repository.  You will receive an automated email
confirmation when this happens.

== Questions

If you have any questions about the patch submission process, you can
ask them either on the
https://spectrum-os.org/participating.html#spectrum-devel[development
mailing list], or in the
https://spectrum-os.org/participating.html#irc[IRC/Matrix channel].
debug log:

solving cf19b37 ...
found cf19b37 in https://spectrum-os.org/lists/archives/spectrum-devel/20221028110558.205351-1-evgeniia.nikolaenko@unikie.com/
found 30672b9 in https://spectrum-os.org/git/spectrum
preparing index
index prepared:
100644 30672b949c03d3d9a8b70437ae9e5e242af5025f	Documentation/first-patch.adoc

applying [1/1] https://spectrum-os.org/lists/archives/spectrum-devel/20221028110558.205351-1-evgeniia.nikolaenko@unikie.com/
diff --git a/Documentation/first-patch.adoc b/Documentation/development/first-patch.adoc
similarity index 80%
rename from Documentation/first-patch.adoc
rename to Documentation/development/first-patch.adoc
index 30672b9..cf19b37 100644

Checking patch Documentation/first-patch.adoc => Documentation/development/first-patch.adoc...
Applied patch Documentation/first-patch.adoc => Documentation/development/first-patch.adoc cleanly.

index at:
100644 cf19b3751e7e92e45bbd0f9d19b0dcf1d6d1cda4	Documentation/development/first-patch.adoc

Code repositories for project(s) associated with this public inbox

	https://spectrum-os.org/git/crosvm
	https://spectrum-os.org/git/doc
	https://spectrum-os.org/git/mktuntap
	https://spectrum-os.org/git/nixpkgs
	https://spectrum-os.org/git/spectrum
	https://spectrum-os.org/git/ucspi-vsock
	https://spectrum-os.org/git/www

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).