Merge ~clinton-fung/launchpad:doc-howto-contributing-changes into launchpad:master

Proposed by Clinton Fung
Status: Merged
Approved by: Clinton Fung
Approved revision: 492456d4eeb4786618c09aa626d43fe7043f6701
Merge reported by: Otto Co-Pilot
Merged at revision: not available
Proposed branch: ~clinton-fung/launchpad:doc-howto-contributing-changes
Merge into: launchpad:master
Diff against target: 80 lines (+63/-0)
2 files modified
doc/how-to/contributing-changes.rst (+62/-0)
doc/how-to/index.rst (+1/-0)
Reviewer Review Type Date Requested Status
Colin Watson (community) Approve
Guruprasad Approve
Review via email: mp+430098@code.launchpad.net

Commit message

Added new How-to for contributing changes to Launchpad (action from Launchpad team retro 2022/08/10)

Description of the change

Added new How-to for contributing changes to Launchpad (action from Launchpad team retro 2022/08/10)

To post a comment you must log in.
Revision history for this message
Guruprasad (lgp171188) wrote :

I left some comments and suggestions.

Revision history for this message
Guruprasad (lgp171188) wrote :

LGTM 👍

review: Approve
Revision history for this message
Colin Watson (cjwatson) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/doc/how-to/contributing-changes.rst b/doc/how-to/contributing-changes.rst
2new file mode 100644
3index 0000000..0ab219e
4--- /dev/null
5+++ b/doc/how-to/contributing-changes.rst
6@@ -0,0 +1,62 @@
7+====================
8+Contributing changes
9+====================
10+
11+This guide shows you how to contribute a change to Launchpad.
12+
13+Discuss the change
14+------------------
15+
16+To begin with, it is usually helpful to discuss the change you'd like to make, in a `bug <https://bugs.launchpad.net/launchpad>`_, in the `launchpad-users <https://launchpad.net/~launchpad-users>`_ or `launchpad-dev <https://launchpad.net/~launchpad-dev>`_ mailing lists, or on IRC (``#launchpad-dev`` on ``irc.libera.chat``).
17+
18+Get the Launchpad source
19+----------------------------
20+
21+Once you have decided on the change to be made, clone the repository.
22+
23+.. code-block:: bash
24+
25+ git clone https://git.launchpad.net/launchpad
26+
27+Make your changes
28+-------------------
29+
30+Create a branch from a reasonable point, such as ``master``.
31+
32+.. code-block:: bash
33+
34+ git checkout -b my-change
35+
36+Make your changes on the branch. Be sure to test them locally (by setting up a local `Launchpad development instance <https://launchpad.readthedocs.io/en/latest/how-to/running.html>`_)!
37+
38+Run the pre-commit hook
39+-----------------------
40+
41+If you followed the instructions to `set up and run Launchpad <https://launchpad.readthedocs.io/en/latest/how-to/running.html#>`_, you should already have ``pre-commit`` installed and have the ``pre-commit`` git hook `installed <https://launchpad.readthedocs.io/en/latest/how-to/running.html#installing-the-pre-commit-hook>`_. If not, complete these steps before proceeding.
42+
43+Push your changes
44+--------------------
45+
46+Once you are happy with your changes, stage and commit them, and then push to a personal repository.
47+
48+Next, you need to share your changes with the Launchpad maintainers, but you probably don't have permissions to push to the ``master`` branch of the Launchpad codebase. To share your changes with the Launchpad maintainers, you need to push your commit to a personal git repository.
49+
50+Create a merge proposal
51+-----------------------
52+
53+Once your commit has been pushed to a personal git repository, you can follow the direct link in the post-push message to create a merge proposal. Alternatively, in a web browser, visit
54+
55+.. code-block:: bash
56+
57+ https://code.launchpad.net/~<username>/+git
58+
59+Remember to replace your username in the URL.
60+
61+Navigate to the personal repository to which you pushed your changes, and then to the branch containing your commit.
62+
63+Select Propose for merging, provide a reasonable commit message, and description of your changes.
64+
65+What comes next?
66+----------------
67+
68+Once you have created a merge proposal, a Launchpad maintainer will inspect your commit and approve or reject the changes. There may be a comments that require you to make amendments to your proposed changes, which you can do by repeating this workflow. However, once your changes are approved, your changes will be merged into the ``master`` branch of the Launchpad code base!
69diff --git a/doc/how-to/index.rst b/doc/how-to/index.rst
70index 7fae5e5..3222260 100644
71--- a/doc/how-to/index.rst
72+++ b/doc/how-to/index.rst
73@@ -17,6 +17,7 @@ Common development tasks
74 .. toctree::
75 :maxdepth: 1
76
77+ contributing-changes
78 exceptions
79 security
80 avoid-debugging-issues

Subscribers

People subscribed via source and target branches

to status/vote changes: