[pacman-dev] Git cheat-sheet for pacman - Was: [PATCH] links problem in bacman
Xavier
shiningxc at gmail.com
Sun Jul 27 11:58:39 EDT 2008
On Mon, Jun 23, 2008 at 9:29 AM, Allan McRae <allan at archlinux.org> wrote:
>
> You may want to add a line about checking out other peoples branches
> (e.g. the pgp branch). I would be interested in that too...
>
Please have a look at these two wiki pages :
http://wiki.archlinux.org/index.php/Pacman_Development
http://wiki.archlinux.org/index.php/Super_Quick_Git_Guide
> Also, the submitting patches page needs a bit of updating. It is
> currently a mash-up between the pre and post git eras.
>
I am not so good at this kind of stuff, but I didn't like the current
state of that page either.
So here is my attempt of a new version.
=== submitting-patches NEW FILE ===
Pacman - Submitting Patches
===========================
This document is here mainly to make my job easier, and is more of a guideline,
and not a strict set of rules. Please try to follow as much as you can.
NOTE: Some of this is paraphrased from the kernel documentation's
"SubmittingPatches" file.
Creating your patch
-------------------
Patches need to be submitted in GIT format. So for getting started, you will
have to read some git guides first, to learn how to fetch pacman git repo, how
to configure your name and email adress, how to create a branch, a commit, and
finally your patch.
--
* use git commit -s for creating a commit of your changes.
The -s allows you to credit yourself by adding a "Signed Off By" line to
indicate who has "signed" the patch - who has approved it.
Signed-off-by: Aaron Griffin <aaron at archlinux.org>
Please use your real name and email address. Feel free to "scramble" the
address if you're afraid of spam.
* Describe your patch.
It helps if you describe the changes of the patch in the git commit log.
This allows others to see what you intended so as to compare it to
what was actually done, and allows better feedback.
* Use git format-patch to create patches.
Your commit message will be shown above the patch by default when you will use
`git-format-patch`, including the signoff line.
--
Submitting your patch
---------------------
--
* Send the patch to the pacman-dev mailing list
The mailing list is the primary queue for review and acceptance. Here you
will get feedback, and let me know the details of your patch.
* No MIME, no links, no compression, no attachments. Just plain text.
Patches should be contained in the actual body of the email. There are many
reasons for this. Firstly, it makes them easier to read with any mail reader,
it allows easier review "at a glance", and most importantly, it allows people
to comment on exact lines of the patch in reply emails.
git send-email allows you to send git formatted patches in plain text easily.
--
After you submit
----------------
--
* Don't get discouraged
Any feedback you get, positive or negative, has nothing to do with you. If a
patch is rejected, try taking the suggestions into account and re-submitting.
We welcome most submissions here, and some may take a bit longer to get
looked over than others. If you think your patch got lost in the shuffle,
send another email to the list in reply to the original asking if anyone has
looked at it yet.
--
/////
vim: set ts=2 sw=2 syntax=asciidoc et:
/////
======
=== PATCH ===
>From a70ae43bd65be9b924c30bb1b3a399f9804f7d79 Mon Sep 17 00:00:00 2001
From: Xavier Chantry <shiningxc at gmail.com>
Date: Sun, 27 Jul 2008 17:45:52 +0200
Subject: [PATCH] Update submitting-patches file.
The submitting patches page needed a bit of updating. It was currently a
mash-up between the pre and post git eras.
But the following page might be a better replacement of the whole file:
http://wiki.archlinux.org/index.php/Super_Quick_Git_Guide
Signed-off-by: Xavier Chantry <shiningxc at gmail.com>
---
submitting-patches | 61 ++++++++++++++++++---------------------------------
1 files changed, 22 insertions(+), 39 deletions(-)
diff --git a/submitting-patches b/submitting-patches
index 02cde30..452a1b8 100644
--- a/submitting-patches
+++ b/submitting-patches
@@ -4,34 +4,38 @@ Pacman - Submitting Patches
This document is here mainly to make my job easier, and is more of a guideline,
and not a strict set of rules. Please try to follow as much as you can.
-NOTE: Much of this is paraphrased from the kernel documentation's
+NOTE: Some of this is paraphrased from the kernel documentation's
"SubmittingPatches" file.
Creating your patch
-------------------
-Most of this was more relevant before we switched to GIT for version control.
-However, much of it is still applicable and should be followed. Some notes
-have been added to make this a bit more up-to-date with the GIT workflow.
+Patches need to be submitted in GIT format. So for getting started, you will
+have to read some git guides first, to learn how to fetch pacman git repo, how
+to configure your name and email adress, how to create a branch, a commit, and
+finally your patch.
--
-* Use "diff -up" or "diff -uprN" to create patches.
+* use git commit -s for creating a commit of your changes.
-These options make the diff easier to read for those of us who try to review
-submitted patches. If you are working on your own git branch, then GIT
-formatted patches are perfectly acceptable.
+The -s allows you to credit yourself by adding a "Signed Off By" line to
+indicate who has "signed" the patch - who has approved it.
+
+ Signed-off-by: Aaron Griffin <aaron at archlinux.org>
-* Please try to make patches "p1 applicable"
+Please use your real name and email address. Feel free to "scramble" the
+address if you're afraid of spam.
-This means that if you are patching file "lib/libalpm/alpm.h", I should be
-able to apply your patch while passing the -p1 argument to 'patch'. The diff
-header should look like so:
+* Describe your patch.
- --- ORIGINAL_DIR/lib/libalpm/alpm.h
- +++ NEW_DIR/lib/libalpm/alpm.h
+It helps if you describe the changes of the patch in the git commit log.
+This allows others to see what you intended so as to compare it to
+what was actually done, and allows better feedback.
-With '-p1' the ORIGINAL_DIR and NEW_DIR arguments are stripped. GIT produces
-p1 formatted patches by default.
+* Use git format-patch to create patches.
+
+Your commit message will be shown above the patch by default when you will use
+`git-format-patch`, including the signoff line.
--
Submitting your patch
@@ -41,8 +45,7 @@ Submitting your patch
* Send the patch to the pacman-dev mailing list
The mailing list is the primary queue for review and acceptance. Here you
-will get feedback, and let me know the details of your patch. It also helps
-if you add "[patch]" to the beginning of your Subject line.
+will get feedback, and let me know the details of your patch.
* No MIME, no links, no compression, no attachments. Just plain text.
@@ -51,28 +54,8 @@ reasons for this. Firstly, it makes them easier to
read with any mail reader,
it allows easier review "at a glance", and most importantly, it allows people
to comment on exact lines of the patch in reply emails.
-It is important to know that the diff format ignores plain text before (and
-after) the main diff itself. If you directly insert your patch into an email,
-you can safely add lines above it describing your patch.
-
-* Describe your patch.
-
-Before the actual diff begins, it helps if you describe the changes in the
-patch. This allows others to see what you intended so as to compare it to
-what was actually done, and allows better feedback. If you use
-`git-format-patch` to create your patch, then your commit message will
-be shown above the patch by default.
-
-* Credit yourself
-
-Just like with the kernel, it helps if you add a "Signed Off By" line to
-indicate who has "signed" the patch - who has approved it.
-
- Signed-off-by: Aaron Griffin <aaron at archlinux.org>
-
+git send-email allows you to send git formatted patches in plain text easily.
-Please use your real name and email address. Feel free to "scramble" the
-address if you're afraid of spam. `git commit -s` makes this easy.
--
After you submit
--
1.5.6.4
======
More information about the pacman-dev
mailing list