<feed xmlns='http://www.w3.org/2005/Atom'>
<title>user/sven/git.git/git-rebase--interactive.sh, branch v1.8.3.3</title>
<subtitle>Git
</subtitle>
<id>https://git.stealer.net/cgit.cgi/user/sven/git.git/atom?h=v1.8.3.3</id>
<link rel='self' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/atom?h=v1.8.3.3'/>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/'/>
<updated>2013-04-25T16:59:34Z</updated>
<entry>
<title>bash-prompt.sh: show where rebase is at when stopped</title>
<updated>2013-04-25T16:59:34Z</updated>
<author>
<name>Zoltan Klinger</name>
<email>zoltan.klinger@gmail.com</email>
</author>
<published>2013-04-25T09:28:54Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=b71dc3e1a04666fae4a4e282973d9b5a122a997c'/>
<id>urn:sha1:b71dc3e1a04666fae4a4e282973d9b5a122a997c</id>
<content type='text'>
When a rebase stops (e.g. interrupted by a merge conflict), it could
be useful to know how far a rebase has progressed and how many
commits in total this rebase will apply. Teach the __git_ps1()
command to display the number of commits so far applied and the
total number of commits to be applied, like this:

  ((3ec0a6a...)|REBASE 2/5)

In the example above the rebase has stopped at the second commit due to
a merge conflict and there are a total number of five commits to be
applied by this rebase.

This information can be already obtained from the following files which are
being generated during the rebase:

    GIT_DIR/.git/rebase-merge/msgnum (git-rebase--merge.sh)
    GIT_DIR/.git/rebase-merge/end    (git-rebase--merge.sh)
    GIT_DIR/.git/rebase-apply/next   (git-am.sh)
    GIT_DIR/.git/rebase-apply/last   (git-am.sh)

but "rebase -i" does not leave necessary clues.

Implement this feature by doing these three things:

  1) Modify git-rebase--interactive.sh to also create

	GIT_DIR/.git/rebase-merge/msgnum
	GIT_DIR/.git/rebase-merge/end

     files for the number of commits so far applied and the total
     number of commits to be applied.

  2) Modify git-prompt.sh to read and display info from the above
     files.

  3) Update test t9903-bash-prompt.sh to reflect changes introduced
     by this patch.

Signed-off-by: Zoltan Klinger &lt;zoltan.klinger@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'jk/rebase-i-comment-char'</title>
<updated>2013-02-17T23:25:20Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2013-02-17T23:25:19Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=00abd715ab0a2cd69f9d27ea15c5440002f970b8'/>
<id>urn:sha1:00abd715ab0a2cd69f9d27ea15c5440002f970b8</id>
<content type='text'>
Finishing touches to the earlier core.commentchar topic to cover
"rebase -i" as well.

* jk/rebase-i-comment-char:
  rebase -i: respect core.commentchar
</content>
</entry>
<entry>
<title>rebase -i: respect core.commentchar</title>
<updated>2013-02-12T20:01:42Z</updated>
<author>
<name>John Keeping</name>
<email>john@keeping.me.uk</email>
</author>
<published>2013-02-11T23:08:04Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=180bad3d10fe3a7f6d6c990956a888dd0562bef1'/>
<id>urn:sha1:180bad3d10fe3a7f6d6c990956a888dd0562bef1</id>
<content type='text'>
Commit eff80a9 (Allow custom "comment char") introduced a custom comment
character for commit messages but did not teach git-rebase--interactive
to use it.

Change git-rebase--interactive to read core.commentchar and use its
value when generating commit messages and for the command list.

Signed-off-by: John Keeping &lt;john@keeping.me.uk&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'ph/rebase-preserve-all-merges'</title>
<updated>2013-01-22T04:15:15Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2013-01-22T04:15:15Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=51c6de2bab06562d0e69dcfd48f04a3b28a878b1'/>
<id>urn:sha1:51c6de2bab06562d0e69dcfd48f04a3b28a878b1</id>
<content type='text'>
An earlier change to add --keep-empty option broke "git rebase
--preserve-merges" and lost merge commits that end up being the
same as its parent.

* ph/rebase-preserve-all-merges:
  rebase --preserve-merges: keep all merge commits including empty ones
</content>
</entry>
<entry>
<title>rebase --preserve-merges: keep all merge commits including empty ones</title>
<updated>2013-01-14T17:15:39Z</updated>
<author>
<name>Phil Hord</name>
<email>hordp@cisco.com</email>
</author>
<published>2013-01-12T20:46:01Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=986977847e6fb46448fc9c567292ccd2a93d40b3'/>
<id>urn:sha1:986977847e6fb46448fc9c567292ccd2a93d40b3</id>
<content type='text'>
Since 90e1818f9a  (git-rebase: add keep_empty flag, 2012-04-20)
'git rebase --preserve-merges' fails to preserve empty merge commits
unless --keep-empty is also specified.  Merge commits should be
preserved in order to preserve the structure of the rebased graph,
even if the merge commit does not introduce changes to the parent.

Teach rebase not to drop merge commits only because they are empty.

A special case which is not handled by this change is for a merge commit
whose parents are now the same commit because all the previous different
parents have been dropped as a result of this rebase or some previous
operation.

Signed-off-by: Phil Hord &lt;hordp@cisco.com&gt;
Acked-by: Neil Horman &lt;nhorman@tuxdriver.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'aw/rebase-i-edit-todo'</title>
<updated>2012-09-30T05:28:12Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2012-09-30T05:28:12Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=68a31b7d956e958f1b51e80f6cb91858e416c95d'/>
<id>urn:sha1:68a31b7d956e958f1b51e80f6cb91858e416c95d</id>
<content type='text'>
Teach an option to edit the insn sheet to "git rebase -i".

* aw/rebase-i-edit-todo:
  rebase -i: suggest using --edit-todo to fix an unknown instruction
  rebase -i: Add tests for "--edit-todo"
  rebase -i: Teach "--edit-todo" action
  rebase -i: Refactor help messages for todo file
  rebase usage: subcommands can not be combined with -i
</content>
</entry>
<entry>
<title>rebase -i: suggest using --edit-todo to fix an unknown instruction</title>
<updated>2012-09-19T19:52:10Z</updated>
<author>
<name>Johannes Sixt</name>
<email>j6t@kdbg.org</email>
</author>
<published>2012-09-19T06:43:54Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=9c8e1011b9f6979777946ff87aae7b5846ed20a7'/>
<id>urn:sha1:9c8e1011b9f6979777946ff87aae7b5846ed20a7</id>
<content type='text'>
We have now an explicit UI to edit the todo sheet and need not disclose
the name of the file.

Signed-off-by: Johannes Sixt &lt;j6t@kdbg.org&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>rebase -i: fix misleading error message after 'exec no-such' instruction</title>
<updated>2012-09-18T20:27:45Z</updated>
<author>
<name>Johannes Sixt</name>
<email>j6t@kdbg.org</email>
</author>
<published>2012-09-18T11:15:26Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=ecfe1ea96fde1fa5756ad04f717fd2960ead988a'/>
<id>urn:sha1:ecfe1ea96fde1fa5756ad04f717fd2960ead988a</id>
<content type='text'>
When the todo sheet of interactive rebase instructs to run a non-existing
command, the operation stops with the following error:

  Execution failed: no-such
  You can fix the problem, and then run

          git rebase --continue

  fatal: 'rebase' appears to be a git command, but we were not
  able to execute it. Maybe git-rebase is broken?

The reason is that the shell that attempted to run the command exits with
code 127. rebase--interactive just forwards this code to the caller (the
git wrapper). But our smart run-command infrastructure detects this
special exit code and turns it into ENOENT, which in turn is interpreted
by the git wrapper as if the external command that it just executed did
not exist. This is finally translated to the misleading last two lines in
error message cited above.

Fix it by translating the error code before it is forwarded.

Signed-off-by: Johannes Sixt &lt;j6t@kdbg.org&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>rebase -i: Teach "--edit-todo" action</title>
<updated>2012-09-18T03:59:14Z</updated>
<author>
<name>Andrew Wong</name>
<email>andrew.kw.w@gmail.com</email>
</author>
<published>2012-09-18T01:28:09Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=eb9a7cb4bdbd4ea9c7e7ef2ca8de5b2753e3584c'/>
<id>urn:sha1:eb9a7cb4bdbd4ea9c7e7ef2ca8de5b2753e3584c</id>
<content type='text'>
This allows users to edit the todo file while they're stopped in the
middle of an interactive rebase. When this action is executed, all
comments from the original todo file are stripped, and new help messages
are appended to the end.

Signed-off-by: Andrew Wong &lt;andrew.kw.w@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>rebase -i: Refactor help messages for todo file</title>
<updated>2012-09-18T03:58:55Z</updated>
<author>
<name>Andrew Wong</name>
<email>andrew.kw.w@gmail.com</email>
</author>
<published>2012-09-18T01:28:08Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=fcc5ef1cc90ed49400bef51d306216f290eab9cc'/>
<id>urn:sha1:fcc5ef1cc90ed49400bef51d306216f290eab9cc</id>
<content type='text'>
Signed-off-by: Andrew Wong &lt;andrew.kw.w@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
</feed>
