Mercurial > hg
view tests/test-manifest-merging.t @ 21553:bee0e1cffdd3
import: add --partial flag to create a changeset despite failed hunks
The `hg import` command gains a `--partial` flag. When specified, a commit will
always be created from a patch import. Any hunk that fails to apply will
create .rej file, same as what `hg qimport` would do. This change is mainly
aimed at preserving changeset metadata when applying a patch, something very
important for reviewers.
In case of failure with `--partial`, `hg import` returns 1 and the following
message is displayed:
patch applied partially
(fix the .rej files and run `hg commit --amend`)
When multiple patches are imported, we stop at the first one with failed hunks.
In the future, someone may feel brave enough to tackle a --continue flag to
import.
author | Pierre-Yves David <pierre-yves.david@fb.com> |
---|---|
date | Thu, 08 May 2014 17:08:17 -0700 |
parents | f2719b387380 |
children |
line wrap: on
line source
$ hg init base $ cd base $ echo 'alpha' > alpha $ hg ci -A -m 'add alpha' adding alpha $ cd .. $ hg clone base work updating to branch default 1 files updated, 0 files merged, 0 files removed, 0 files unresolved $ cd work $ echo 'beta' > beta $ hg ci -A -m 'add beta' adding beta $ cd .. $ cd base $ echo 'gamma' > gamma $ hg ci -A -m 'add gamma' adding gamma $ cd .. $ cd work $ hg pull -q $ hg merge 1 files updated, 0 files merged, 0 files removed, 0 files unresolved (branch merge, don't forget to commit) Update --clean to revision 1 to simulate a failed merge: $ rm alpha beta gamma $ hg update --clean 1 2 files updated, 0 files merged, 0 files removed, 0 files unresolved $ cd ..