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 21:09 ` Stephan Beyer
2008-07-03 22:11 ` Junio C Hamano
2008-07-03 22:34 ` 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 22:51 ` Junio C Hamano
2008-07-03 23:33 ` Stephan Beyer
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 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).