* [PATCH] New commit option --fixup.
@ 2010-10-06 22:58 Rodolfo Borges
2010-10-07 0:38 ` Pat Notz
0 siblings, 1 reply; 4+ messages in thread
From: Rodolfo Borges @ 2010-10-06 22:58 UTC (permalink / raw)
To: git, gitster; +Cc: Rodolfo Borges
Equivalent of '-C HEAD --amend'.
Inspired by new 'fixup' rebase -i action.
Signed-off-by: Rodolfo Borges <rodolfo.borges@gmail.com>
---
Documentation/git-commit.txt | 4 ++++
builtin/commit.c | 8 +++++++-
2 files changed, 11 insertions(+), 1 deletions(-)
diff --git a/Documentation/git-commit.txt b/Documentation/git-commit.txt
index 42fb1f5..faba634 100644
--- a/Documentation/git-commit.txt
+++ b/Documentation/git-commit.txt
@@ -180,6 +180,10 @@ You should understand the implications of rewriting history if you
amend a commit that has already been published. (See the "RECOVERING
FROM UPSTREAM REBASE" section in linkgit:git-rebase[1].)
+--fixup::
+ Like '--amend', but use previous commit message.
+ (Equivalent to `--amend -C HEAD`.)
+
-i::
--include::
Before making a commit out of staged contents so far,
diff --git a/builtin/commit.c b/builtin/commit.c
index 66fdd22..fd7c145 100644
--- a/builtin/commit.c
+++ b/builtin/commit.c
@@ -70,7 +70,7 @@ static const char *logfile, *force_author;
static const char *template_file;
static char *edit_message, *use_message;
static char *author_name, *author_email, *author_date;
-static int all, edit_flag, also, interactive, only, amend, signoff;
+static int all, edit_flag, also, interactive, only, amend, fixup, signoff;
static int quiet, verbose, no_verify, allow_empty, dry_run, renew_authorship;
static int no_post_rewrite, allow_empty_message;
static char *untracked_files_arg, *force_date, *ignore_submodule_arg;
@@ -147,6 +147,7 @@ static struct option builtin_commit_options[] = {
OPT_BOOLEAN('z', "null", &null_termination,
"terminate entries with NUL"),
OPT_BOOLEAN(0, "amend", &amend, "amend previous commit"),
+ OPT_BOOLEAN(0, "fixup", &fixup, "fixup previous commit"),
OPT_BOOLEAN(0, "no-post-rewrite", &no_post_rewrite, "bypass post-rewrite hook"),
{ OPTION_STRING, 'u', "untracked-files", &untracked_files_arg, "mode", "show untracked files, optional modes: all, normal, no (Default: all)", PARSE_OPT_OPTARG, NULL, (intptr_t)"all" },
/* end commit contents options */
@@ -863,6 +864,11 @@ static int parse_and_validate_options(int argc, const char *argv[],
if (force_author && renew_authorship)
die("Using both --reset-author and --author does not make sense");
+ if (fixup) {
+ amend = 1;
+ use_message = "HEAD";
+ }
+
if (logfile || message.len || use_message)
use_editor = 0;
if (edit_flag)
--
1.7.2.3
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] New commit option --fixup.
2010-10-06 22:58 [PATCH] New commit option --fixup Rodolfo Borges
@ 2010-10-07 0:38 ` Pat Notz
2010-10-07 8:09 ` Sverre Rabbelier
0 siblings, 1 reply; 4+ messages in thread
From: Pat Notz @ 2010-10-07 0:38 UTC (permalink / raw)
To: Rodolfo Borges; +Cc: git, gitster
On Wed, Oct 6, 2010 at 4:58 PM, Rodolfo Borges <rodolfo.borges@gmail.com> wrote:
> Equivalent of '-C HEAD --amend'.
> Inspired by new 'fixup' rebase -i action.
>
> Signed-off-by: Rodolfo Borges <rodolfo.borges@gmail.com>
> ---
> Documentation/git-commit.txt | 4 ++++
> builtin/commit.c | 8 +++++++-
> 2 files changed, 11 insertions(+), 1 deletions(-)
>
> diff --git a/Documentation/git-commit.txt b/Documentation/git-commit.txt
> index 42fb1f5..faba634 100644
> --- a/Documentation/git-commit.txt
> +++ b/Documentation/git-commit.txt
> @@ -180,6 +180,10 @@ You should understand the implications of rewriting history if you
> amend a commit that has already been published. (See the "RECOVERING
> FROM UPSTREAM REBASE" section in linkgit:git-rebase[1].)
>
> +--fixup::
> + Like '--amend', but use previous commit message.
> + (Equivalent to `--amend -C HEAD`.)
> +
Why not just use an alias for this? I do:
git config alias.fixup "commit --amend -C HEAD"
Also, I've been working on --fixup and --squash options for commit,
under the same inspiration. See,
http://thread.gmane.org/gmane.comp.version-control.git/156883
I'm hoping to submit v5 patch series tomorrow night.
> -i::
> --include::
> Before making a commit out of staged contents so far,
> diff --git a/builtin/commit.c b/builtin/commit.c
> index 66fdd22..fd7c145 100644
> --- a/builtin/commit.c
> +++ b/builtin/commit.c
> @@ -70,7 +70,7 @@ static const char *logfile, *force_author;
> static const char *template_file;
> static char *edit_message, *use_message;
> static char *author_name, *author_email, *author_date;
> -static int all, edit_flag, also, interactive, only, amend, signoff;
> +static int all, edit_flag, also, interactive, only, amend, fixup, signoff;
> static int quiet, verbose, no_verify, allow_empty, dry_run, renew_authorship;
> static int no_post_rewrite, allow_empty_message;
> static char *untracked_files_arg, *force_date, *ignore_submodule_arg;
> @@ -147,6 +147,7 @@ static struct option builtin_commit_options[] = {
> OPT_BOOLEAN('z', "null", &null_termination,
> "terminate entries with NUL"),
> OPT_BOOLEAN(0, "amend", &amend, "amend previous commit"),
> + OPT_BOOLEAN(0, "fixup", &fixup, "fixup previous commit"),
> OPT_BOOLEAN(0, "no-post-rewrite", &no_post_rewrite, "bypass post-rewrite hook"),
> { OPTION_STRING, 'u', "untracked-files", &untracked_files_arg, "mode", "show untracked files, optional modes: all, normal, no (Default: all)", PARSE_OPT_OPTARG, NULL, (intptr_t)"all" },
> /* end commit contents options */
> @@ -863,6 +864,11 @@ static int parse_and_validate_options(int argc, const char *argv[],
> if (force_author && renew_authorship)
> die("Using both --reset-author and --author does not make sense");
>
> + if (fixup) {
> + amend = 1;
> + use_message = "HEAD";
> + }
> +
> if (logfile || message.len || use_message)
> use_editor = 0;
> if (edit_flag)
> --
> 1.7.2.3
>
> --
> To unsubscribe from this list: send the line "unsubscribe git" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] New commit option --fixup.
2010-10-07 0:38 ` Pat Notz
@ 2010-10-07 8:09 ` Sverre Rabbelier
2010-10-07 8:35 ` Ævar Arnfjörð Bjarmason
0 siblings, 1 reply; 4+ messages in thread
From: Sverre Rabbelier @ 2010-10-07 8:09 UTC (permalink / raw)
To: Pat Notz; +Cc: Rodolfo Borges, git, gitster
Heya,
On Thu, Oct 7, 2010 at 02:38, Pat Notz <patnotz@gmail.com> wrote:
> Why not just use an alias for this? I do:
>
> git config alias.fixup "commit --amend -C HEAD"
I have a similar alias:
git config alias.amendall "commit --amend -a -C HEAD"
I don't think we need a command to do this, but I'm starting to think
we really should have a list of aliases either ship with git itself,
or with the git documentation.
--
Cheers,
Sverre Rabbelier
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] New commit option --fixup.
2010-10-07 8:09 ` Sverre Rabbelier
@ 2010-10-07 8:35 ` Ævar Arnfjörð Bjarmason
0 siblings, 0 replies; 4+ messages in thread
From: Ævar Arnfjörð Bjarmason @ 2010-10-07 8:35 UTC (permalink / raw)
To: Sverre Rabbelier; +Cc: Pat Notz, Rodolfo Borges, git, gitster
On Thu, Oct 7, 2010 at 08:09, Sverre Rabbelier <srabbelier@gmail.com> wrote:
> Heya,
>
> On Thu, Oct 7, 2010 at 02:38, Pat Notz <patnotz@gmail.com> wrote:
>> Why not just use an alias for this? I do:
>>
>> git config alias.fixup "commit --amend -C HEAD"
>
> I have a similar alias:
>
> git config alias.amendall "commit --amend -a -C HEAD"
>
> I don't think we need a command to do this, but I'm starting to think
> we really should have a list of aliases either ship with git itself,
> or with the git documentation.
FWIW that's one of the things I want to do if I pick up my .gitconfig
inclusion patch again. Have aliases files that ship with Git itself
that you can include in ~/.gitconfig.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2010-10-07 8:35 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-10-06 22:58 [PATCH] New commit option --fixup Rodolfo Borges
2010-10-07 0:38 ` Pat Notz
2010-10-07 8:09 ` Sverre Rabbelier
2010-10-07 8:35 ` Ævar Arnfjörð Bjarmason
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).