mirror of
https://github.com/facebook/sapling.git
synced 2024-10-06 23:07:18 +03:00
ba00990cdc
Summary: Created this diff by running: ``` find eden/scm/edenscm -name \*.py | xargs sed -i -e 's#update --clean#goto --clean#g' find eden/scm/tests -name \*.t | xargs sed -i -e 's#update --clean#goto --clean#g' find eden/scm/tests -name \*.t | xargs sed -i -e 's#update --continue#goto --continue#g' find eden/scm/edenscm -name \*.py | xargs sed -i -e 's#update --continue#goto --continue#g' find eden/scm/edenscm -name \*.py | xargs sed -i -e 's#prog@ update#prog@ goto#g' find eden/scm/tests -name \*.t | xargs sed -i -e 's# hg update # hg goto #g' find eden/scm/tests -name \*.t | xargs sed -i -e 's#hg update -C#hg goto -C#g' find eden/scm/tests -name \*.t | xargs sed -i -e 's# hg update$# hg goto#g' find eden/scm/tests -name \*.t | xargs sed -i -e 's# update HASH# goto HASH#g' find eden/scm/tests -name \*.t | xargs sed -i -e 's#hg update 1#hg goto 1#g' find eden/scm/tests -name \*.t | xargs sed -i -e "s#'hg update'#'hg goto'#g" find eden/scm/edenscm -name \*.py | xargs sed -i -e 's#:prog:`update`#:prog:`goto`#g' find eden/scm/edenscm -name \*.py | xargs sed -i -e 's#:prog:`update .::`#:prog:`goto .::`#g' sed -i -e 's#commit or update#commit or goto#' eden/integration/hg/update_test.py arc f ``` Though then I had to manually update `eden/integration/hg/update_test.py` to use `assertRegex()` instead of `assertEqual()`, but as noted, that is a temporary issue due to how we run that test for EdenFS for Windows internally. Fixes https://github.com/facebook/sapling/issues/149 Fixes https://github.com/facebook/sapling/issues/293 Reviewed By: zzl0, yancouto Differential Revision: D41859668 fbshipit-source-id: 3bdf4e342fc1a751335960a3216651a5ce35225f
69 lines
1.6 KiB
Perl
69 lines
1.6 KiB
Perl
#chg-compatible
|
|
#debugruntest-compatible
|
|
|
|
$ addcommit () {
|
|
> echo $1 > $1
|
|
> hg add $1
|
|
> hg commit -d "${2} 0" -m $1
|
|
> }
|
|
|
|
$ commit () {
|
|
> hg commit -d "${2} 0" -m $1
|
|
> }
|
|
|
|
$ hg init a
|
|
$ cd a
|
|
$ addcommit "A" 0
|
|
$ addcommit "B" 1
|
|
$ echo "C" >> A
|
|
$ commit "C" 2
|
|
|
|
$ hg goto -C 'desc(A)'
|
|
1 files updated, 0 files merged, 1 files removed, 0 files unresolved
|
|
$ echo "D" >> A
|
|
$ commit "D" 3
|
|
|
|
Merging a conflict araises
|
|
|
|
$ hg merge
|
|
merging A
|
|
warning: 1 conflicts while merging A! (edit, then use 'hg resolve --mark')
|
|
1 files updated, 0 files merged, 0 files removed, 1 files unresolved
|
|
use 'hg resolve' to retry unresolved file merges or 'hg goto -C .' to abandon
|
|
[1]
|
|
|
|
Correct the conflict without marking the file as resolved
|
|
|
|
$ echo "ABCD" > A
|
|
$ hg commit -m "Merged"
|
|
abort: unresolved merge conflicts (see 'hg help resolve')
|
|
[255]
|
|
|
|
Mark the conflict as resolved and commit
|
|
|
|
$ hg resolve -m A
|
|
(no more unresolved files)
|
|
$ hg commit -m "Merged"
|
|
|
|
Test that if a file is removed but not marked resolved, the commit still fails
|
|
(issue4972)
|
|
|
|
$ hg up ".^"
|
|
1 files updated, 0 files merged, 1 files removed, 0 files unresolved
|
|
$ hg merge 'desc(C)'
|
|
merging A
|
|
warning: 1 conflicts while merging A! (edit, then use 'hg resolve --mark')
|
|
1 files updated, 0 files merged, 0 files removed, 1 files unresolved
|
|
use 'hg resolve' to retry unresolved file merges or 'hg goto -C .' to abandon
|
|
[1]
|
|
$ hg rm --force A
|
|
$ hg commit -m merged
|
|
abort: unresolved merge conflicts (see 'hg help resolve')
|
|
[255]
|
|
|
|
$ hg resolve -ma
|
|
(no more unresolved files)
|
|
$ hg commit -m merged
|
|
|
|
$ cd ..
|