"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "git-rebase.txt" between
git-htmldocs-2.33.0.tar.xz and git-htmldocs-2.33.1.tar.xz

About: Git is a distributed version control system designed to handle everything from small to very large projects (like the Linux kernel) with speed and efficiency. Documentation (HTML).

git-rebase.txt  (git-htmldocs-2.33.0.tar.xz):git-rebase.txt  (git-htmldocs-2.33.1.tar.xz)
skipping to change at line 336 skipping to change at line 336
--edit-todo:: --edit-todo::
Edit the todo list during an interactive rebase. Edit the todo list during an interactive rebase.
--show-current-patch:: --show-current-patch::
Show the current patch in an interactive rebase or when rebase Show the current patch in an interactive rebase or when rebase
is stopped because of conflicts. This is the equivalent of is stopped because of conflicts. This is the equivalent of
`git show REBASE_HEAD`. `git show REBASE_HEAD`.
-m:: -m::
--merge:: --merge::
Use merging strategies to rebase. When the recursive (default) merge Using merging strategies to rebase (default).
strategy is used, this allows rebase to be aware of renames on the
upstream side. This is the default.
+ +
Note that a rebase merge works by replaying each commit from the working Note that a rebase merge works by replaying each commit from the working
branch on top of the <upstream> branch. Because of this, when a merge branch on top of the <upstream> branch. Because of this, when a merge
conflict happens, the side reported as 'ours' is the so-far rebased conflict happens, the side reported as 'ours' is the so-far rebased
series, starting with <upstream>, and 'theirs' is the working branch. In series, starting with <upstream>, and 'theirs' is the working branch. In
other words, the sides are swapped. other words, the sides are swapped.
+ +
See also INCOMPATIBLE OPTIONS below. See also INCOMPATIBLE OPTIONS below.
-s <strategy>:: -s <strategy>::
--strategy=<strategy>:: --strategy=<strategy>::
Use the given merge strategy. Use the given merge strategy, instead of the default
If there is no `-s` option 'git merge-recursive' is used `recursive`. This implies `--merge`.
instead. This implies --merge.
+ +
Because 'git rebase' replays each commit from the working branch Because 'git rebase' replays each commit from the working branch
on top of the <upstream> branch using the given strategy, using on top of the <upstream> branch using the given strategy, using
the 'ours' strategy simply empties all patches from the <branch>, the 'ours' strategy simply empties all patches from the <branch>,
which makes little sense. which makes little sense.
+ +
See also INCOMPATIBLE OPTIONS below. See also INCOMPATIBLE OPTIONS below.
-X <strategy-option>:: -X <strategy-option>::
--strategy-option=<strategy-option>:: --strategy-option=<strategy-option>::
skipping to change at line 526 skipping to change at line 523
i.e. commits that would be excluded by linkgit:git-log[1]'s i.e. commits that would be excluded by linkgit:git-log[1]'s
`--ancestry-path` option will keep their original ancestry by default. If `--ancestry-path` option will keep their original ancestry by default. If
the `rebase-cousins` mode is turned on, such commits are instead rebased the `rebase-cousins` mode is turned on, such commits are instead rebased
onto `<upstream>` (or `<onto>`, if specified). onto `<upstream>` (or `<onto>`, if specified).
+ +
The `--rebase-merges` mode is similar in spirit to the deprecated The `--rebase-merges` mode is similar in spirit to the deprecated
`--preserve-merges` but works with interactive rebases, `--preserve-merges` but works with interactive rebases,
where commits can be reordered, inserted and dropped at will. where commits can be reordered, inserted and dropped at will.
+ +
It is currently only possible to recreate the merge commits using the It is currently only possible to recreate the merge commits using the
`recursive` merge strategy; Different merge strategies can be used only via `recursive` merge strategy; different merge strategies can be used only via
explicit `exec git merge -s <strategy> [...]` commands. explicit `exec git merge -s <strategy> [...]` commands.
+ +
See also REBASING MERGES and INCOMPATIBLE OPTIONS below. See also REBASING MERGES and INCOMPATIBLE OPTIONS below.
-p:: -p::
--preserve-merges:: --preserve-merges::
[DEPRECATED: use `--rebase-merges` instead] Recreate merge commits [DEPRECATED: use `--rebase-merges` instead] Recreate merge commits
instead of flattening the history by replaying commits a merge commit instead of flattening the history by replaying commits a merge commit
introduces. Merge conflict resolutions or manual amendments to merge introduces. Merge conflict resolutions or manual amendments to merge
commits are not preserved. commits are not preserved.
skipping to change at line 1211 skipping to change at line 1208
The `merge` command will merge the specified revision(s) into whatever The `merge` command will merge the specified revision(s) into whatever
is HEAD at that time. With `-C <original-commit>`, the commit message of is HEAD at that time. With `-C <original-commit>`, the commit message of
the specified merge commit will be used. When the `-C` is changed to the specified merge commit will be used. When the `-C` is changed to
a lower-case `-c`, the message will be opened in an editor after a a lower-case `-c`, the message will be opened in an editor after a
successful merge so that the user can edit the message. successful merge so that the user can edit the message.
If a `merge` command fails for any reason other than merge conflicts (i.e. If a `merge` command fails for any reason other than merge conflicts (i.e.
when the merge operation did not even start), it is rescheduled immediately. when the merge operation did not even start), it is rescheduled immediately.
At this time, the `merge` command will *always* use the `recursive` By default, the `merge` command will use the `recursive` merge
merge strategy for regular merges, and `octopus` for octopus merges, strategy for regular merges, and `octopus` for octopus merges. One
with no way to choose a different one. To work around can specify a default strategy for all merges using the `--strategy`
this, an `exec` command can be used to call `git merge` explicitly, argument when invoking rebase, or can override specific merges in the
using the fact that the labels are worktree-local refs (the ref interactive list of commands by using an `exec` command to call `git
`refs/rewritten/onto` would correspond to the label `onto`, for example). merge` explicitly with a `--strategy` argument. Note that when
calling `git merge` explicitly like this, you can make use of the fact
that the labels are worktree-local refs (the ref `refs/rewritten/onto`
would correspond to the label `onto`, for example) in order to refer
to the branches you want to merge.
Note: the first command (`label onto`) labels the revision onto which Note: the first command (`label onto`) labels the revision onto which
the commits are rebased; The name `onto` is just a convention, as a nod the commits are rebased; The name `onto` is just a convention, as a nod
to the `--onto` option. to the `--onto` option.
It is also possible to introduce completely new merge commits from scratch It is also possible to introduce completely new merge commits from scratch
by adding a command of the form `merge <merge-head>`. This form will by adding a command of the form `merge <merge-head>`. This form will
generate a tentative commit message and always open an editor to let the generate a tentative commit message and always open an editor to let the
user edit it. This can be useful e.g. when a topic branch turns out to user edit it. This can be useful e.g. when a topic branch turns out to
address more than a single concern and wants to be split into two or address more than a single concern and wants to be split into two or
 End of changes. 4 change blocks. 
13 lines changed or deleted 14 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)