[jira] [Updated] (SVN-4680) obstructing working copy after clean update to a revision
[ https://issues.apache.org/jira/browse/SVN-4680?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Johan Corveleyn updated SVN-4680: - Priority: Minor (was: Major) Lowering priority to "Minor". This is a bit of an edge case bug IMHO, and there is a workaround. > obstructing working copy after clean update to a revision > - > > Key: SVN-4680 > URL: https://issues.apache.org/jira/browse/SVN-4680 > Project: Subversion > Issue Type: Bug >Affects Versions: 1.9.5 > Environment: windows 7 x64, tortoise svn tools >Reporter: Andrey >Priority: Minor > Labels: obstructing > Attachments: test_update_issue.bat > > > If try to move some directory into new place and make external on the old > place of the moved directory with the same name, then the svn stops update > this external properly if execute backward update into revision below the > commit with new external. > See the windows batch script in the attachment for reproduction. > The output is: > {quote} > Checked out revision 0. > svn: Skipping argument: E200025: 'test_repo_root/.svn' ends in a reserved name > A test_repo_root\dir1 > A test_repo_root\dir1\file1.txt > A test_repo_root\dir2 > A test_repo_root\dir2\file2.txt > Adding test_repo_root\dir1 > Adding test_repo_root\dir1\file1.txt > Adding test_repo_root\dir2 > Adding test_repo_root\dir2\file2.txt > Transmitting file data ..done > Committing transaction... > Committed revision 1. > Updating 'test_repo_root': > At revision 1. > A test_repo_root\ext > A test_repo_root\ext\dir2 > D test_repo_root\dir2 > D test_repo_root\dir2\file2.txt > property 'svn:externals' set on 'test_repo_root' > Sendingtest_repo_root > Deleting test_repo_root\dir2 > Adding test_repo_root\ext > Adding test_repo_root\ext\dir2 > Committing transaction... > Committed revision 2. > Updating 'test_repo_root': > Fetching external item into 'test_repo_root\dir2': > Atest_repo_root\dir2\file2.txt > Updated external to revision 2. > At revision 2. > Updating 'test_repo_root': > Dtest_repo_root\ext > Skipped 'test_repo_root\dir2' -- An obstructing working copy was found > U test_repo_root > Removed external 'test_repo_root\dir2' > Updated to revision 1. > Summary of conflicts: > Skipped paths: 1 > {quote} > I know this is old issue, but why a clean copy could not be so as clean > updated? > Why the externals does not process for remove before the update to a > revision? If you do so this error would not happen. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (SVN-4680) obstructing working copy after clean update to a revision
[ https://issues.apache.org/jira/browse/SVN-4680?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andrey updated SVN-4680: Description: If try to move some directory into new place and make external on the old place of the moved directory with the same name, then the svn stops update this external properly if execute backward update into revision below the commit with new external. See the windows batch script in the attachment for reproduction. The output is: {quote} Checked out revision 0. svn: Skipping argument: E200025: 'test_repo_root/.svn' ends in a reserved name A test_repo_root\dir1 A test_repo_root\dir1\file1.txt A test_repo_root\dir2 A test_repo_root\dir2\file2.txt Adding test_repo_root\dir1 Adding test_repo_root\dir1\file1.txt Adding test_repo_root\dir2 Adding test_repo_root\dir2\file2.txt Transmitting file data ..done Committing transaction... Committed revision 1. Updating 'test_repo_root': At revision 1. A test_repo_root\ext A test_repo_root\ext\dir2 D test_repo_root\dir2 D test_repo_root\dir2\file2.txt property 'svn:externals' set on 'test_repo_root' Sendingtest_repo_root Deleting test_repo_root\dir2 Adding test_repo_root\ext Adding test_repo_root\ext\dir2 Committing transaction... Committed revision 2. Updating 'test_repo_root': Fetching external item into 'test_repo_root\dir2': Atest_repo_root\dir2\file2.txt Updated external to revision 2. At revision 2. Updating 'test_repo_root': Dtest_repo_root\ext Skipped 'test_repo_root\dir2' -- An obstructing working copy was found U test_repo_root Removed external 'test_repo_root\dir2' Updated to revision 1. Summary of conflicts: Skipped paths: 1 {quote} I know this is old issue, but why a clean copy could not be so as clean updated? Why the externals does not process for remove before the update to a revision? If you do so this error would not happen. was: If try to move some directory into new place and make external on the old place of the moved directory with the same name, then the svn stops update this external properly if execute backward update into revision below the commit with new external. See the windows batch script for reproduction: {quote} @echo off set REPODIR=test_repo set "REPOROOT=%~dp0%REPODIR%" set "REPOURL=file:///%REPOROOT:\=/%" set WCROOT=%REPODIR%_root if exist "%REPOROOT%\" ( rmdir /S /Q "%REPOROOT%" || goto :EOF ) if exist "%WCROOT%\" ( rmdir /S /Q "%WCROOT%" || goto :EOF ) mkdir "%REPOROOT%" svnadmin create "%REPOROOT%" || goto :EOF mkdir "%WCROOT%" svn co "%REPOURL%" "%WCROOT%" || goto :EOF rem creating tree w/o externals mkdir "%WCROOT%/dir1" || goto :EOF type nul > "%WCROOT%/dir1/file1.txt" || goto :EOF mkdir "%WCROOT%/dir2" || goto :EOF type nul > "%WCROOT%/dir2/file2.txt" || goto :EOF svn add "%WCROOT%/*.*" || goto :EOF svn ci "%WCROOT%" -m "rev1" || goto :EOF rem update to the head svn up "%WCROOT%" rem move /dir2 into /ext mkdir "%WCROOT%/ext" || goto :EOF svn add "%WCROOT%/ext" || goto :EOF svn mv "%WCROOT%/dir2" "%WCROOT%/ext" || goto :EOF svn pset svn:externals "^/ext/dir2 dir2" "%WCROOT%" svn ci "%WCROOT%" -m "rev2" || goto :EOF rem update to the head svn up "%WCROOT%" rem conflict: 'test_repo_root\dir2' -- An obstructing working copy was found svn up -r 1 "%WCROOT%" rem dir2 is not properly updated after this point exit /b {quote} The output is: {quote} Checked out revision 0. svn: Skipping argument: E200025: 'test_repo_root/.svn' ends in a reserved name A test_repo_root\dir1 A test_repo_root\dir1\file1.txt A test_repo_root\dir2 A test_repo_root\dir2\file2.txt Adding test_repo_root\dir1 Adding test_repo_root\dir1\file1.txt Adding test_repo_root\dir2 Adding test_repo_root\dir2\file2.txt Transmitting file data ..done Committing transaction... Committed revision 1. Updating 'test_repo_root': At revision 1. A test_repo_root\ext A test_repo_root\ext\dir2 D test_repo_root\dir2 D test_repo_root\dir2\file2.txt property 'svn:externals' set on 'test_repo_root' Sendingtest_repo_root Deleting test_repo_root\dir2 Adding test_repo_root\ext Adding test_repo_root\ext\dir2 Committing transaction... Committed revision 2. Updating 'test_repo_root': Fetching external item into 'test_repo_root\dir2': Atest_repo_root\dir2\file2.txt Updated external to revision 2. At revision 2. Updating 'test_repo_root': Dtest_repo_root\ext Skipped 'test_repo_root\dir2' -- An obstructing working copy was found U test_repo_root Removed external 'test_repo_root\dir2' Updated to revision 1. Summary of conflicts: Skipped paths: 1 {quote} I know this is old issue, but why a clean copy could not be so as clean updated? Why the externals does not process for remove before the update to a
[jira] [Updated] (SVN-4680) obstructing working copy after clean update to a revision
[ https://issues.apache.org/jira/browse/SVN-4680?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andrey updated SVN-4680: Attachment: test_update_issue.bat the reporoduction script > obstructing working copy after clean update to a revision > - > > Key: SVN-4680 > URL: https://issues.apache.org/jira/browse/SVN-4680 > Project: Subversion > Issue Type: Bug >Affects Versions: 1.9.5 > Environment: windows 7 x64, tortoise svn tools >Reporter: Andrey > Labels: obstructing > Attachments: test_update_issue.bat > > > If try to move some directory into new place and make external on the old > place of the moved directory with the same name, then the svn stops update > this external properly if execute backward update into revision below the > commit with new external. > See the windows batch script for reproduction: > {quote} > @echo off > set REPODIR=test_repo > set "REPOROOT=%~dp0%REPODIR%" > set "REPOURL=file:///%REPOROOT:\=/%" > set WCROOT=%REPODIR%_root > if exist "%REPOROOT%\" ( rmdir /S /Q "%REPOROOT%" || goto :EOF ) > if exist "%WCROOT%\" ( rmdir /S /Q "%WCROOT%" || goto :EOF ) > mkdir "%REPOROOT%" > svnadmin create "%REPOROOT%" || goto :EOF > mkdir "%WCROOT%" > svn co "%REPOURL%" "%WCROOT%" || goto :EOF > rem creating tree w/o externals > mkdir "%WCROOT%/dir1" || goto :EOF > type nul > "%WCROOT%/dir1/file1.txt" || goto :EOF > mkdir "%WCROOT%/dir2" || goto :EOF > type nul > "%WCROOT%/dir2/file2.txt" || goto :EOF > svn add "%WCROOT%/*.*" || goto :EOF > svn ci "%WCROOT%" -m "rev1" || goto :EOF > rem update to the head > svn up "%WCROOT%" > rem move /dir2 into /ext > mkdir "%WCROOT%/ext" || goto :EOF > svn add "%WCROOT%/ext" || goto :EOF > svn mv "%WCROOT%/dir2" "%WCROOT%/ext" || goto :EOF > svn pset svn:externals "^/ext/dir2 dir2" "%WCROOT%" > svn ci "%WCROOT%" -m "rev2" || goto :EOF > rem update to the head > svn up "%WCROOT%" > rem conflict: 'test_repo_root\dir2' -- An obstructing working copy was found > svn up -r 1 "%WCROOT%" > rem dir2 is not properly updated after this point > exit /b > {quote} > The output is: > {quote} > Checked out revision 0. > svn: Skipping argument: E200025: 'test_repo_root/.svn' ends in a reserved name > A test_repo_root\dir1 > A test_repo_root\dir1\file1.txt > A test_repo_root\dir2 > A test_repo_root\dir2\file2.txt > Adding test_repo_root\dir1 > Adding test_repo_root\dir1\file1.txt > Adding test_repo_root\dir2 > Adding test_repo_root\dir2\file2.txt > Transmitting file data ..done > Committing transaction... > Committed revision 1. > Updating 'test_repo_root': > At revision 1. > A test_repo_root\ext > A test_repo_root\ext\dir2 > D test_repo_root\dir2 > D test_repo_root\dir2\file2.txt > property 'svn:externals' set on 'test_repo_root' > Sendingtest_repo_root > Deleting test_repo_root\dir2 > Adding test_repo_root\ext > Adding test_repo_root\ext\dir2 > Committing transaction... > Committed revision 2. > Updating 'test_repo_root': > Fetching external item into 'test_repo_root\dir2': > Atest_repo_root\dir2\file2.txt > Updated external to revision 2. > At revision 2. > Updating 'test_repo_root': > Dtest_repo_root\ext > Skipped 'test_repo_root\dir2' -- An obstructing working copy was found > U test_repo_root > Removed external 'test_repo_root\dir2' > Updated to revision 1. > Summary of conflicts: > Skipped paths: 1 > {quote} > I know this is old issue, but why a clean copy could not be so as clean > updated? > Why the externals does not process for remove before the update to a > revision? If you do so this error would not happen. -- This message was sent by Atlassian JIRA (v6.3.15#6346)