From: Jakub Narebski <jnareb@gmail.com>
To: Stephan Beyer <s-beyer@gmx.net>
Cc: git@vger.kernel.org, Junio C Hamano <gitster@pobox.com>,
Johannes Schindelin <Johannes.Schindelin@gmx.de>
Subject: Re: [RFC/PATCH 2/4] Add git-sequencer prototype documentation
Date: Tue, 01 Jul 2008 06:02:54 -0700 (PDT) [thread overview]
Message-ID: <m34p79hhy9.fsf@localhost.localdomain> (raw)
In-Reply-To: <1214879914-17866-3-git-send-email-s-beyer@gmx.net>
Stephan Beyer <s-beyer@gmx.net> writes:
> Mentored-by: Christian Couder <chriscool@tuxfamily.org>
> Mentored-by: Daniel Barkalow <barkalow@iabervon.org>
Cc mentors?
> +git-sequencer will usually be called by another git porcelain, like
> +linkgit:git-am[1] or linkgit:git-rebase[1].
I hope that it could be also used by git-cherry-pick and git-revert,
so it would be possible to pick more than one commit...
> +In case of a conflict or request in the TODO file, git-sequencer will
> +pause. On conflict you can use git-diff to locate the markers (`<<<<<<<`)
> +and make edits to resolve the conflict.
> +
> +For each file you edit, you need to tell git the changes by doing
> +
> + git add <file>
> +
> +After resolving the conflict manually and updating the index with the
> +desired resolution, you can continue the sequencing process with
> +
> + git sequencer --continue
Does it run pre-commit hooks, for example checking for merge markers
(but also whitespace errors), and can those checks be disabled?
> +-B::
> +--batch::
> + Run in batch mode. If unexpected user intervention is needed
> + (e.g. a conflict or the need to run an editor), git-sequencer fails.
> ++
> +Note that the sanity check fails, if you use this option
> +and an instruction like `edit` or `pause`.
s/.$/ is in the TODO file./
> +--edit::
> + Invoke editor to edit the undone rest of the TODO file.
Does it mean that editor will be invoked with only _unprocessed_
part of the TODO file? It looks like it, but it might be not
obvious to some.
> +merge [options] <commit-ish1> <commit-ish2> ... <commit-ishN>::
> + Merge commits into HEAD.
Nice.
"HEAD" mean last picked up / created commit, isn't it?
> ++
> +A commit can also be given by a mark, if prefixed with a colon.
"You can refer to commit by mark", perhaps?
> + --standard;;
> + Generates a commit message like 'Merge ... into HEAD'.
> + See also linkgit:git-fmt-merge-msg[1].
Is it short for `--standard-message`?
> +pick [options] <commit>::
> + Pick (see linkgit:git-cherry-pick[1]) a commit.
> + Sequencer will pause on conflicts.
> ++
> +See the following list and 'GENERAL OPTIONS' for values of `options`:
> +
> + -R;;
> + --reverse;;
> + Revert the changes introduced by pick <commit>.
> +
> + --mainline=<n>;;
> + Allows you to pick merge commits by specifying the
> + parent number (beginning from 1) to let sequencer
> + replay the changes relative to the specified parent.
> + +
> +This option does not work together with `-R`.
Why? I would have thought that it would work...
> +patch [options] <file>::
[...]
> + -*;;
> + Any other dash-prefixed option is passed to
> + linkgit:git-apply[1].
> + This is especially useful for flags like
> + `--reverse`, `-C<n>`, `-p<n>` or `--whitespace=<action>`.
Do all options make sense? What about `--index' and `--cached',
or about different no-apply options?
> +ref <ref>::
> + Set ref `<ref>` to the current HEAD, see also
> + linkgit:git-update-ref[1].
So this functions like "git reset --soft <ref>", isn't it?
> +squash [options] --from <mark>::
> + Squash all commits from the given mark into one commit.
> + There must not be any `merge` instructions between the
> + `mark` instruction and this `squash --from` instruction.
Can you use <commit> instead of <mark> here?
> + --include-merges;;
> + Sanity check does not fail if you have merges
> + between HEAD and <mark>.
How do you squash merges? Creating merge with an union of parents,
excluding commits which got squashed?
It means
...a---b---c---d ...[abcd]
/ ==> /
...x-/ ..x-/
but
...a---b---c---d ...[abcd]
\ / ==>
\-x-/
> +RETURN VALUES
> +-------------
> +* any other value on error, e.g.
> + running git-sequencer on a bare repository.
Don't you enumerate those return values?
--
Jakub Narebski
Poland
ShadeHawk on #git
next prev parent reply other threads:[~2008-07-01 13:04 UTC|newest]
Thread overview: 52+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-07-01 2:38 git sequencer prototype Stephan Beyer
2008-07-01 2:38 ` [RFC/PATCH 1/4] Add git-sequencer shell prototype Stephan Beyer
2008-07-01 2:38 ` [RFC/PATCH 2/4] Add git-sequencer prototype documentation Stephan Beyer
2008-07-01 2:38 ` [RFC/PATCH 3/4] Add git-sequencer test suite (t3350) Stephan Beyer
2008-07-01 2:38 ` [RFC/PATCH 4/4] Migrate git-am to use git-sequencer Stephan Beyer
2008-07-01 2:39 ` git-rebase-i migration to sequencer Stephan Beyer
2008-07-01 2:39 ` [PATCH 1/2] Make rebase--interactive use OPTIONS_SPEC Stephan Beyer
2008-07-01 2:39 ` [RFC/PATCH 2/2] Migrate git-rebase--i to use git-sequencer Stephan Beyer
2008-07-05 17:31 ` [RFC/PATCH 3/4] Add git-sequencer test suite (t3350) Stephan Beyer
2008-07-05 18:16 ` Junio C Hamano
2008-07-01 13:02 ` Jakub Narebski [this message]
2008-07-01 16:03 ` [RFC/PATCH 2/4] Add git-sequencer prototype documentation Stephan Beyer
2008-07-01 18:04 ` Jakub Narebski
2008-07-01 19:50 ` Stephan Beyer
2008-07-02 0:39 ` Jakub Narebski
2008-07-02 1:20 ` Junio C Hamano
2008-07-02 3:01 ` Stephan Beyer
2008-07-05 17:00 ` [PATCH v2 " Stephan Beyer
2008-07-08 10:37 ` Jakub Narebski
2008-07-08 11:49 ` Stephan Beyer
2008-07-09 5:20 ` Karl Hasselström
2008-07-03 1:45 ` [RFC/PATCH 1/4] Add git-sequencer shell prototype Junio C Hamano
2008-07-03 11:03 ` Johannes Schindelin
2008-07-03 22:51 ` Junio C Hamano
2008-07-03 21:09 ` Stephan Beyer
2008-07-03 22:11 ` Junio C Hamano
2008-07-03 22:34 ` Stephan Beyer
2008-07-03 23:33 ` Stephan Beyer
2008-07-03 23:53 ` Johannes Schindelin
2008-07-04 0:38 ` Stephan Beyer
2008-07-04 1:03 ` Johannes Schindelin
2008-07-04 1:53 ` Stephan Beyer
2008-07-04 15:19 ` [PATCH] Allow cherry-picking root commits Johannes Schindelin
2008-07-04 16:41 ` Stephan Beyer
2008-07-06 1:05 ` Junio C Hamano
2008-07-06 1:37 ` Johannes Schindelin
2008-07-06 11:32 ` t3503: Add test case for identical files Stephan Beyer
2008-07-06 11:35 ` [PATCH] Allow cherry-picking root commits Stephan Beyer
2008-07-06 12:48 ` Johannes Schindelin
2008-07-04 1:06 ` [RFC/PATCH 1/4] Add git-sequencer shell prototype Stephan Beyer
2008-07-04 1:11 ` Johannes Schindelin
2008-07-03 13:10 ` Jakub Narebski
2008-07-03 21:12 ` Stephan Beyer
2008-07-05 16:58 ` [PATCH v2 " Stephan Beyer
2008-07-01 8:51 ` git sequencer prototype Junio C Hamano
2008-07-01 14:53 ` Stephan Beyer
2008-07-04 21:00 ` Alex Riesen
2008-07-04 22:09 ` Junio C Hamano
2008-07-04 22:23 ` Stephan Beyer
2008-07-05 8:13 ` Alex Riesen
2008-07-05 10:12 ` Thomas Adam
2008-07-05 10:13 ` Johannes Schindelin
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=m34p79hhy9.fsf@localhost.localdomain \
--to=jnareb@gmail.com \
--cc=Johannes.Schindelin@gmx.de \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=s-beyer@gmx.net \
/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.