All of lore.kernel.org
 help / color / mirror / Atom feed
From: Charvi Mendiratta <charvi077@gmail.com>
To: git@vger.kernel.org
Cc: gitster@pobox.com, christian.couder@gmail.com,
	phillip.wood123@gmail.com,
	Charvi Mendiratta <charvi077@gmail.com>,
	Christian Couder <chriscool@tuxfamily.org>,
	Phillip Wood <phillip.wood@dunelm.org.uk>
Subject: [PATCH v3 6/6] doc/git-commit: add documentation for fixup=[amend|reword] options
Date: Mon,  1 Mar 2021 14:15:14 +0530	[thread overview]
Message-ID: <20210301084512.27170-7-charvi077@gmail.com> (raw)
In-Reply-To: <20210301084512.27170-1-charvi077@gmail.com>

Mentored-by: Christian Couder <chriscool@tuxfamily.org>
Mentored-by: Phillip Wood <phillip.wood@dunelm.org.uk>
Helped-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Charvi Mendiratta <charvi077@gmail.com>
---
 Documentation/git-commit.txt | 40 ++++++++++++++++++++++++++++++------
 Documentation/git-rebase.txt | 21 ++++++++++---------
 2 files changed, 45 insertions(+), 16 deletions(-)

diff --git a/Documentation/git-commit.txt b/Documentation/git-commit.txt
index 17150fa7ea..722f8f0a6d 100644
--- a/Documentation/git-commit.txt
+++ b/Documentation/git-commit.txt
@@ -9,7 +9,7 @@ SYNOPSIS
 --------
 [verse]
 'git commit' [-a | --interactive | --patch] [-s] [-v] [-u<mode>] [--amend]
-	   [--dry-run] [(-c | -C | --fixup | --squash) <commit>]
+	   [--dry-run] [(-c | -C | --squash) <commit> | --fixup [(amend|reword):]<commit>)]
 	   [-F <file> | -m <msg>] [--reset-author] [--allow-empty]
 	   [--allow-empty-message] [--no-verify] [-e] [--author=<author>]
 	   [--date=<date>] [--cleanup=<mode>] [--[no-]status]
@@ -86,11 +86,39 @@ OPTIONS
 	Like '-C', but with `-c` the editor is invoked, so that
 	the user can further edit the commit message.
 
---fixup=<commit>::
-	Construct a commit message for use with `rebase --autosquash`.
-	The commit message will be the subject line from the specified
-	commit with a prefix of "fixup! ".  See linkgit:git-rebase[1]
-	for details.
+--fixup=[(amend|reword):]<commit>::
+	Without `amend:` or `reword:`, create a `fixup!` commit where
+	the commit message will be the subject line from the specified
+	commit with a prefix of "fixup!'". The resulting "fixup!" commit
+	is further used with `git rebase --autosquash` to fixup the
+	content of the specified commit.
++
+The `--fixup=amend:<commit>` form creates an "amend!" commit to
+fixup both the content and the commit log message of the specified
+commit. The resulting "amend!" commit's commit message subject
+will be the subject line from the specified commit with a prefix of
+"amend!'" and the message body will be commit log message of the
+specified commit. It also invokes an editor seeded with the log
+message of the "amend!" commit to allow to edit further. And it
+refuses to create "amend!" commit if it's commit message body is
+empty unless used with the `--allow-empty-message` option. "amend!"
+commit when rebased with `--autosquash` will fixup the contents and
+replace the commit message of the specified commit with the "amend!"
+commit's message body.
++
+The `--fixup=reword:<commit>` form creates an "amend!" commit similar
+to `--fixup=amend:<commit>` creates, but it records the same tree as
+`HEAD`, i.e. it does not take any staged changes and only allows to
+fixup the commit message of the specified commit. It will reword the
+specified commit when it is rebased with `--autosquash`.
++
+The `--fixup=amend:` and `--fixup=reword:` forms cannot be used with
+other options to add to the commit log message i.e it is incompatible
+with `-m`/`-F`/`-c`/`-C` options.
++
+Also, after fixing the commit using `--fixup`, with or without option
+and rebased with `--autosquash`, the authorship of the original commit
+remains unchanged. See linkgit:git-rebase[1] for details.
 
 --squash=<commit>::
 	Construct a commit message for use with `rebase --autosquash`.
diff --git a/Documentation/git-rebase.txt b/Documentation/git-rebase.txt
index 8bfa5a9272..ffea76e53b 100644
--- a/Documentation/git-rebase.txt
+++ b/Documentation/git-rebase.txt
@@ -593,16 +593,17 @@ See also INCOMPATIBLE OPTIONS below.
 
 --autosquash::
 --no-autosquash::
-	When the commit log message begins with "squash! ..." (or
-	"fixup! ..."), and there is already a commit in the todo list that
-	matches the same `...`, automatically modify the todo list of rebase
-	-i so that the commit marked for squashing comes right after the
-	commit to be modified, and change the action of the moved commit
-	from `pick` to `squash` (or `fixup`).  A commit matches the `...` if
-	the commit subject matches, or if the `...` refers to the commit's
-	hash. As a fall-back, partial matches of the commit subject work,
-	too.  The recommended way to create fixup/squash commits is by using
-	the `--fixup`/`--squash` options of linkgit:git-commit[1].
+	When the commit log message begins with "squash! ..." (or "fixup! ..."
+	or "amend! ..."), and there is already a commit in the todo list that
+	matches the same `...`, automatically modify the todo list of
+	`rebase -i`, so that the commit marked for squashing comes right after
+	the commit to be modified, and change the action of the moved commit
+	from `pick` to `squash` (or `fixup` or `fixup -C`) respectively. A commit
+	matches the `...` if the commit subject matches, or if the `...` refers
+	to the commit's hash. As a fall-back, partial matches of the commit
+	subject work, too. The recommended way to create fixup/squash/amend
+	commits is by using the `--fixup=[amend|reword]`/`--squash` options of
+	linkgit:git-commit[1].
 +
 If the `--autosquash` option is enabled by default using the
 configuration variable `rebase.autoSquash`, this option can be
-- 
2.29.0.rc1


  parent reply	other threads:[~2021-03-01  8:51 UTC|newest]

Thread overview: 95+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-01  8:45 [PATCH v3 0/6][Outreachy] commit: Implementation of "amend!" commit Charvi Mendiratta
2021-03-01  8:45 ` [PATCH v3 1/6] sequencer: export subject_length() Charvi Mendiratta
2021-03-01 20:25   ` Eric Sunshine
2021-03-03  6:26     ` Junio C Hamano
2021-03-03  7:35     ` Charvi Mendiratta
2021-03-01  8:45 ` [PATCH v3 2/6] commit: add amend suboption to --fixup to create amend! commit Charvi Mendiratta
2021-03-01 18:34   ` Junio C Hamano
2021-03-03  7:32     ` Charvi Mendiratta
2021-03-01 22:15   ` Eric Sunshine
2021-03-01 22:32     ` Junio C Hamano
2021-03-01 22:47       ` Eric Sunshine
2021-03-03  7:42         ` Charvi Mendiratta
2021-03-03  7:41       ` Charvi Mendiratta
2021-03-03  7:57         ` Eric Sunshine
2021-03-03 19:21           ` Charvi Mendiratta
2021-03-04  0:58           ` Junio C Hamano
2021-03-04  9:01             ` Charvi Mendiratta
2021-03-03  7:37     ` Charvi Mendiratta
2021-03-03  7:46       ` Eric Sunshine
2021-03-03 19:21         ` Charvi Mendiratta
2021-03-01  8:45 ` [PATCH v3 3/6] commit: add a reword suboption to --fixup Charvi Mendiratta
2021-03-01 18:41   ` Junio C Hamano
2021-03-03  7:33     ` Charvi Mendiratta
2021-03-01 22:36   ` Eric Sunshine
2021-03-03  7:41     ` Charvi Mendiratta
2021-03-01  8:45 ` [PATCH v3 4/6] t7500: add tests for --fixup=[amend|reword] options Charvi Mendiratta
2021-03-02  5:43   ` Eric Sunshine
2021-03-03  6:28     ` Junio C Hamano
2021-03-03  7:43     ` Charvi Mendiratta
2021-03-01  8:45 ` [PATCH v3 5/6] t3437: use --fixup with options to create amend! commit Charvi Mendiratta
2021-03-01  8:45 ` Charvi Mendiratta [this message]
2021-03-01 18:44   ` [PATCH v3 6/6] doc/git-commit: add documentation for fixup=[amend|reword] options Junio C Hamano
2021-03-03  7:33     ` Charvi Mendiratta
2021-03-02  6:39   ` Eric Sunshine
2021-03-03  7:43     ` Charvi Mendiratta
2021-03-03  8:18       ` Eric Sunshine
2021-03-03 19:22         ` Charvi Mendiratta
2021-03-04  1:05         ` Junio C Hamano
2021-03-04  9:00           ` Charvi Mendiratta
2021-03-04 22:18             ` Junio C Hamano
2021-03-05  6:14               ` Charvi Mendiratta
2021-03-05 18:25                 ` Junio C Hamano
2021-03-06  4:13                   ` Charvi Mendiratta
2021-03-06  6:11                     ` Eric Sunshine
2021-03-01 18:45 ` [PATCH v3 0/6][Outreachy] commit: Implementation of "amend!" commit Junio C Hamano
2021-03-03  7:33   ` Charvi Mendiratta
2021-03-10 19:43 ` [PATCH v4 " Charvi Mendiratta
2021-03-11  8:06   ` Eric Sunshine
2021-03-11 15:24     ` Charvi Mendiratta
2021-03-13 13:40   ` [PATCH v5 " Charvi Mendiratta
2021-03-13 13:40   ` [PATCH v5 1/6] sequencer: export and rename subject_length() Charvi Mendiratta
2021-03-13 13:40   ` [PATCH v5 2/6] commit: add amend suboption to --fixup to create amend! commit Charvi Mendiratta
2021-03-14  1:32     ` Eric Sunshine
2021-03-13 13:40   ` [PATCH v5 3/6] commit: add a reword suboption to --fixup Charvi Mendiratta
2021-03-13 13:40   ` [PATCH v5 4/6] t7500: add tests for --fixup=[amend|reword] options Charvi Mendiratta
2021-03-13 13:40   ` [PATCH v5 5/6] t3437: use --fixup with options to create amend! commit Charvi Mendiratta
2021-03-13 13:40   ` [PATCH v5 6/6] doc/git-commit: add documentation for fixup=[amend|reword] options Charvi Mendiratta
2021-03-14  1:10     ` Eric Sunshine
2021-03-14 13:57       ` Charvi Mendiratta
2021-03-15  7:54   ` [PATCH v6 0/6][Outreachy] commit: Implementation of "amend!" commit Charvi Mendiratta
2021-03-19  0:52     ` Junio C Hamano
2021-03-19  3:16       ` Eric Sunshine
2021-03-19 14:10         ` Charvi Mendiratta
2021-03-15  7:54   ` [PATCH v6 1/6] sequencer: export and rename subject_length() Charvi Mendiratta
2021-03-15  7:54   ` [PATCH v6 2/6] commit: add amend suboption to --fixup to create amend! commit Charvi Mendiratta
2021-03-15  7:54   ` [PATCH v6 3/6] commit: add a reword suboption to --fixup Charvi Mendiratta
2021-03-15  7:54   ` [PATCH v6 4/6] t7500: add tests for --fixup=[amend|reword] options Charvi Mendiratta
2021-03-15  7:54   ` [PATCH v6 5/6] t3437: use --fixup with options to create amend! commit Charvi Mendiratta
2021-03-15  7:54   ` [PATCH v6 6/6] doc/git-commit: add documentation for fixup=[amend|reword] options Charvi Mendiratta
2021-03-10 19:43 ` [PATCH v4 1/6] sequencer: export and rename subject_length() Charvi Mendiratta
2021-03-10 19:43 ` [PATCH v4 2/6] commit: add amend suboption to --fixup to create amend! commit Charvi Mendiratta
2021-03-11  6:25   ` Eric Sunshine
2021-03-11 15:24     ` Charvi Mendiratta
2021-03-11 17:07       ` Eric Sunshine
2021-03-11 17:51         ` Charvi Mendiratta
2021-03-14  2:25         ` Junio C Hamano
2021-03-14 13:58           ` Charvi Mendiratta
2021-03-14 22:43             ` Junio C Hamano
2021-03-14 23:07               ` Eric Sunshine
2021-03-15  7:59                 ` Charvi Mendiratta
2021-03-15  8:16                   ` Eric Sunshine
2021-03-15  9:35                     ` Charvi Mendiratta
2021-03-10 19:43 ` [PATCH v4 3/6] commit: add a reword suboption to --fixup Charvi Mendiratta
2021-03-11  0:31   ` Junio C Hamano
2021-03-11  4:01     ` Charvi Mendiratta
2021-03-11  5:37       ` Junio C Hamano
2021-03-11  6:37         ` Eric Sunshine
2021-03-11 15:23         ` Charvi Mendiratta
2021-03-10 19:43 ` [PATCH v4 4/6] t7500: add tests for --fixup=[amend|reword] options Charvi Mendiratta
2021-03-10 19:43 ` [PATCH v4 5/6] t3437: use --fixup with options to create amend! commit Charvi Mendiratta
2021-03-10 19:43 ` [PATCH v4 6/6] doc/git-commit: add documentation for fixup=[amend|reword] options Charvi Mendiratta
2021-03-11  0:30   ` Junio C Hamano
2021-03-11  4:02     ` Charvi Mendiratta
2021-03-11  7:48   ` Eric Sunshine
2021-03-11 15:24     ` Charvi Mendiratta

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210301084512.27170-7-charvi077@gmail.com \
    --to=charvi077@gmail.com \
    --cc=20210217072904.16257-1-charvi077@gmail.com \
    --cc=chriscool@tuxfamily.org \
    --cc=christian.couder@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=phillip.wood123@gmail.com \
    --cc=phillip.wood@dunelm.org.uk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.