svn merging is full of fail
[SCENE: adium/branches/summer_of_code_2008/unit_testing. I’m merging changes from trunk to this branch.]
svn --version
svn, version 1.5.0 (r31699)
compiled Jul 5 2008, 04:29:25
Copyright (C) 2000-2008 CollabNet.
Subversion is open source software, see http://subversion.tigris.org/
This product includes software developed by CollabNet (http://www.Collab.Net/).
The following repository access (RA) modules are available:
* ra_neon : Module for accessing a repository via WebDAV protocol using Neon.
- handles 'http' scheme
- handles 'https' scheme
* ra_svn : Module for accessing a repository using the svn network protocol.
- with Cyrus SASL authentication
- handles 'svn' scheme
* ra_local : Module for accessing a repository on local disk.
- handles 'file' scheme
* ra_serf : Module for accessing a repository via WebDAV protocol using serf.
- handles 'http' scheme
- handles 'https' scheme
___
svn up
At revision 24694.
___
svn st
? Docs
? DoxyCleaned
~ Resources/Message Styles/renkooNaked.AdiumMessageStyle/Contents/Resources/Incoming/buddy_icon.png
~ Resources/Message Styles/renkooNaked.AdiumMessageStyle/Contents/Resources/outgoing_icon.png
~ Resources/Message Styles/renkooNaked.AdiumMessageStyle/Contents/Resources/Outgoing/buddy_icon.png
~ Resources/Message Styles/renkooNaked.AdiumMessageStyle/Contents/Resources/incoming_icon.png
(~ = “versioned item obstructed by some item of a different kind”)
rm -Rf Resources/Message\ Styles/renkooNaked.AdiumMessageStyle
___
svn up Resources/Message\ Styles/renkooNaked.AdiumMessageStyle
[snip]
___
cd ../../..
___
svn merge -r23936:24694 trunk branches/summer_of_code_2008/unit_testing
--- Merging r23937 through r24694 into 'branches/summer_of_code_2008/unit_testing':
[snip]
Conflict discovered in 'branches/summer_of_code_2008/unit_testing/Resources/Emoticons/MSN.AdiumEmoticonset/Emoticons.plist'.
Select: (p) postpone, (df) diff-full, (e) edit,
(h) help for more options: e
[I correct the plist to match what trunk has.]
Select: (p) postpone, (df) diff-full, (e) edit, (r) resolved,
(h) help for more options: r
___
plutil -lint branches/summer_of_code_2008/unit_testing/Resources/Emoticons/MSN.AdiumEmoticonset/Emoticons.plist
branches/summer_of_code_2008/unit_testing/Resources/Emoticons/MSN.AdiumEmoticonset/Emoticons.plist: OK
___
plutil -lint branches/summer_of_code_2008/unit_testing/Adium.xcodeproj
branches/summer_of_code_2008/unit_testing/Adium.xcodeproj: file does not exist or is not readable or is not a regular file
___
plutil -lint branches/summer_of_code_2008/unit_testing/Adium.xcodeproj/project.pbxproj
branches/summer_of_code_2008/unit_testing/Adium.xcodeproj/project.pbxproj: OK
___
plutil -lint branches/summer_of_code_2008/unit_testing/Frameworks/AIUtilities\ Framework/AIUtilities.framework.xcodeproj/project.pbxproj
branches/summer_of_code_2008/unit_testing/Frameworks/AIUtilities Framework/AIUtilities.framework.xcodeproj/project.pbxproj: OK
___
cd branches/summer_of_code_2008/unit_testing %~/Projects/@otherpeoplesprojects/adium(0)
___
xcodebuild -configuration Development
[snip]
** BUILD SUCCEEDED **
___
svn ci
Sending unit_testing
[snip]
Transmitting file data .......................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................svn: Commit failed (details follow):
svn: Checksum mismatch for '/Volumes/Home-etc/Users/prh/Projects/@otherpeoplesprojects/adium/branches/summer_of_code_2008/unit_testing/Resources/Emoticons/MSN.AdiumEmoticonset/.svn/text-base/Emoticons.plist.svn-base'; expected: '109d361ce47a49a66e53e98412251398', actual: 'a21c8336d1f839b9aaa8a2795a7e25f5'
svn: Your commit message was left in a temporary file:
svn: '/Volumes/Home-etc/Users/prh/Projects/@otherpeoplesprojects/adium/branches/summer_of_code_2008/svn-commit.2.tmp'
___
cd Resources/Emoticons
___
rm -Rf MSN.AdiumEmoticonset
___
svn up MSN.AdiumEmoticonset
A MSN.AdiumEmoticonset
[snip]
Updated to revision 24694.
___
cd ../..
___
cd ../../..
___
svn merge -r23936:24694 trunk branches/summer_of_code_2008/unit_testing
svn: Working copy path 'Frameworks/Adium Framework/Source/AISharedAdium.h' does not exist in repository
___
svn merge -r23936:24694 trunk/Resources/Emoticons branches/summer_of_code_2008/unit_testing/Resources/Emoticons
___
svn merge -r23936:24694 trunk/Resources/Emoticons/MSN.AdiumEmoticonset branches/summer_of_code_2008/unit_testing/Resources/Emoticons/MSN.AdiumEmoticonset
___
svn merge -r23936:24694 trunk/Resources/Emoticons/MSN.AdiumEmoticonset/Emoticons.plist branches/summer_of_code_2008/unit_testing/Resources/Emoticons/MSN.AdiumEmoticonset/Emoticons.plist
___
cd branches/summer_of_code_2008/unit_testing/Resources/Emoticons/MSN.AdiumEmoticonset
___
svn pl Emoticons.plist
___
svn st
___
popd
___
diff -u trunk/Resources/Emoticons/MSN.AdiumEmoticonset/Emoticons.plist branches/summer_of_code_2008/unit_testing/Resources/Emoticons/MSN.AdiumEmoticonset/Emoticons.plist
--- trunk/Resources/Emoticons/MSN.AdiumEmoticonset/Emoticons.plist 2008-06-26 20:50:51.000000000 -0700
+++ branches/summer_of_code_2008/unit_testing/Resources/Emoticons/MSN.AdiumEmoticonset/Emoticons.plist 2008-08-07 11:20:27.000000000 -0700
@@ -367,7 +367,7 @@
Name
Cool
- I don't know.gif
+ I Don't Know.gif
Equivalents
[Um, OK. What happened to all the differences it had from trunk that I had merged over? Suddenly, almost all the differences are gone, and the files are nearly the same!]
___
diff -u trunk/Resources/Emoticons/MSN.AdiumEmoticonset/Emoticons.plist branches/summer_of_code_2008/unit_testing/Resources/Emoticons/MSN.AdiumEmoticonset/Emoticons.plist
___
cd branches/summer_of_code_2008 %~/Projects/@otherpeoplesprojects/adium(0)
___
svn ci unit_testing
Sending unit_testing
Transmitting file data ................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................svn: Commit succeeded, but other errors follow:
svn: Error bumping revisions post-commit (details follow):
svn: Directory '/Volumes/Home-etc/Users/prh/Projects/@otherpeoplesprojects/adium/branches/summer_of_code_2008/unit_testing/Frameworks/Sparkle.framework/Versions/A/Resources/ja.lproj/SUUpdateAlert.nib' is missing
svn: Directory '/Volumes/Home-etc/Users/prh/Projects/@otherpeoplesprojects/adium/branches/summer_of_code_2008/unit_testing/Frameworks/Sparkle.framework/Versions/A/Resources/ja.lproj/SUUpdateAlert.nib' is missing
svn: Your commit message was left in a temporary file:
svn: '/Volumes/Home-etc/Users/prh/Projects/@otherpeoplesprojects/adium/branches/summer_of_code_2008/svn-commit.3.tmp'
___
svn st %~/Projects/@otherpeoplesprojects/adium/branches/summer_of_code_2008(1)
? svn-commit.2.tmp
? svn-commit.tmp
? svn-commit.3.tmp
ML unit_testing
? unit_testing/Docs
? unit_testing/DoxyCleaned
L unit_testing/Release
L unit_testing/Release/openUp
L unit_testing/Release/Artwork
M unit_testing/Release/Makefile
L unit_testing/Frameworks
L unit_testing/Frameworks/libgmodule.framework
L unit_testing/Frameworks/libgmodule.framework/Versions
[snip]
(L in third column = Locked)
___
svn cleanup %~/Projects/@otherpeoplesprojects/adium/branches/summer_of_code_2008(0)
svn: In directory 'unit_testing/Frameworks/JSON Framework/Tests/json.org'
svn: Error processing command 'committed' in 'unit_testing/Frameworks/JSON Framework/Tests/json.org'
svn: Working copy 'unit_testing/Frameworks/JSON Framework/Tests' locked
svn: run 'svn cleanup' to remove locks (type 'svn help cleanup' for details)
___
svn cleanup %~/Projects/@otherpeoplesprojects/adium/branches/summer_of_code_2008(1)
svn: In directory 'unit_testing/Frameworks/JSON Framework/Tests/json.org'
svn: Error processing command 'committed' in 'unit_testing/Frameworks/JSON Framework/Tests/json.org'
svn: Working copy 'unit_testing/Frameworks/JSON Framework/Tests' locked
svn: run 'svn cleanup' to remove locks (type 'svn help cleanup' for details)
[So I get to manually clear the locks. Yay!]
___
tar cjf unit_testing.tbz unit_testing
___
cd unit_testing %~/Projects/@otherpeoplesprojects/adium/branches/summer_of_code_2008(0)
___
svn st | grep -Fw L | head
L Frameworks
L Frameworks/JSON Framework
L Frameworks/JSON Framework/Tests
A L+ Frameworks/JSON Framework/Tests/json.org
A L+ Frameworks/JSON Framework/Tests/types
A L+ Frameworks/JSON Framework/Tests/format
A L+ Frameworks/JSON Framework/Tests/rfc4627
L Frameworks/JSON Framework/Tests/Examples
L Frameworks/JSON Framework/Tests/Examples/JSONChecker
A L+ Frameworks/JSON Framework/Tests/jsonchecker
svn: Write error: Broken pipe
___
ls Frameworks/.svn
dir-prop-base format prop-base/ text-base/
entries lock props/ tmp/
___
ls Frameworks/.svn/lock
Frameworks/.svn/lock
___
rm Frameworks/.svn/lock
___
svn st -N Frameworks
L Frameworks/JSON Framework
L Frameworks/libintl.framework
L Frameworks/libpurple.framework
L Frameworks/libmeanwhile.framework
L Frameworks/LMX.framework
R L+ Frameworks/Sparkle.framework
L Frameworks/AutoHyperlinks Framework
L Frameworks/libgobject.framework
L Frameworks/OTR.framework
L Frameworks/libglib.framework
L Frameworks/ShortcutRecorder
L Frameworks/libgthread.framework
L Frameworks/AIUtilities Framework
L Frameworks/OCMock.framework
L Frameworks/PSMTabBarControl.framework
L Frameworks/RBSplitView
L Frameworks/Growl-WithInstaller.framework
L Frameworks/Adium Framework
___
svn st -N Frameworks/JSON\ Framework
L Frameworks/JSON Framework
A + Frameworks/JSON Framework/dmg.sh
L Frameworks/JSON Framework/Tests
L Frameworks/JSON Framework/Site
L Frameworks/JSON Framework/JSON.xcodeproj
L Frameworks/JSON Framework/Docs
A + Frameworks/JSON Framework/bench.m
M Frameworks/JSON Framework/JSON-Info.plist
M Frameworks/JSON Framework/CREDITS
___
rm Frameworks/JSON\ Framework/.svn/lock
___
svn st -N Frameworks/JSON\ Framework
A + Frameworks/JSON Framework/dmg.sh
L Frameworks/JSON Framework/Tests
L Frameworks/JSON Framework/Site
L Frameworks/JSON Framework/JSON.xcodeproj
L Frameworks/JSON Framework/Docs
A + Frameworks/JSON Framework/bench.m
M Frameworks/JSON Framework/JSON-Info.plist
M Frameworks/JSON Framework/CREDITS
___
find . -name lock -print0 | xargs -0 rm
___
svn ci
svn: Working copy '/Volumes/Home-etc/Users/prh/Projects/@otherpeoplesprojects/adium/branches/summer_of_code_2008' locked
svn: run 'svn cleanup' to remove locks (type 'svn help cleanup' for details)
___
rm ../.svn/lock
___
svn ci
Sending unit_testing
[snip]
svn: Commit failed (details follow):
svn: Directory '/branches/summer_of_code_2008/unit_testing' is out of date
___
svn up ..
svn: Failed to add file '../unit_testing/Frameworks/JSON Framework/dmg.sh': a file of the same name is already scheduled for addition with history
___
rm Frameworks/JSON\ Framework/dmg.sh
___
svn up
D Frameworks/libgmodule.framework/Versions/2.0.0/Resources/English.lproj
G Frameworks/JSON Framework/Tests/Types.m
svn: Failed to add directory 'Frameworks/JSON Framework/Tests/json.org': a versioned directory of the same name already exists
___
svn st Frameworks/JSON\ Framework/Tests/json.org
A L+ Frameworks/JSON Framework/Tests/json.org
A + Frameworks/JSON Framework/Tests/json.org/1.json
A + Frameworks/JSON Framework/Tests/json.org/2.json
A + Frameworks/JSON Framework/Tests/json.org/1.plist
⋮
___
find . -name lock -print0 | xargs -0 rm
___
svn st Frameworks/JSON\ Framework/Tests/json.org
A + Frameworks/JSON Framework/Tests/json.org
⋮
___
cd ..
___
mv unit_testing unit_testing-fail
___
svn up unit_testing
A unit_testing
With this fresh working copy, I’m able to build, so I believe I’m finally done.
August 7th, 2008 at 13:05:07
If I followed you correctly there, you did a merge, up, and then merge again, on the same wc. Why’d you do the second merge? You had already merged the changes from trunk…
Also, when you find that stuff’s completely messed up, it’s easier to just remove all of it and do it over, instead of trying to commit… After all those errors, I wouldn\’t have trusted svn to have preserved all changes, something must’ve been lost.
August 7th, 2008 at 16:17:52
Joachim: Because I had bulldozed MSN.AdiumEmoticonSet, then re-upped it. I had expected it to be unmodified (and unmerged), so I ran another merge to try to re-apply the merge to it. I wasn’t expecting the merge to already be applied.
January 7th, 2009 at 09:52:25
Whew, I really like svnmerge.py! ;-)