view tests/fixtures/delete_restore_trunk.sh @ 1340:db9d85618d3d

wrapper: delay marker creation in push Before this patch we were creating obsolescence markers when pulling the changesets from subversion. The counterpart stripping logic (when obsolescence is not available) was done after pushing everything. This patch moves the marker creation to the end of the push, to: 1) Make the code more readable (the marker creation and the stripping should be in the same place) 2) Fix a behavior issue with inhibit(evolve) (see below) With inhibit + hgsubversion enabled. When pushing to subversion we were creating markers as expected but inhibiting the marker on the commit that was the parent of the working copy making it therefore visible. By delaying the marker creation to after the update we avoid this issue.
author Laurent Charignon <lcharignon@fb.com>
date Wed, 08 Jul 2015 13:30:16 -0700
parents c4ee11a5d04c
children
line wrap: on
line source

#!/bin/bash
set -e
mkdir temp
cd temp
svnadmin create repo
svn co file://`pwd`/repo wc
cd wc
mkdir branches trunk tags
svn add *
svn ci -m 'btt'
echo foo > trunk/foo
svn add trunk/foo
svn ci -m 'add file'
svn up
svn rm trunk
svn ci -m 'delete trunk'
svn up
cd ..
svn cp -m 'restore trunk' file://`pwd`/repo/trunk@2 file://`pwd`/repo/trunk
cd wc
svn up
echo bar >> trunk/foo
svn ci -m 'append to file'
svn up
cd ../..
svnadmin dump temp/repo > delete_restore_trunk.svndump
echo
echo 'Complete.'
echo 'You probably want to clean up temp now.'
echo 'Dump in branch_delete_parent_dir.svndump'
exit 0