mikeash.com pyblog/a-tool-for-editing-version-controlled-bundles.html commentshttp://www.mikeash.com/?page=pyblog/a-tool-for-editing-version-controlled-bundles.html#commentsmikeash.com Recent CommentsThu, 28 Mar 2024 16:10:42 GMTPyRSS2Gen-1.0.0http://blogs.law.harvard.edu/tech/rssmikeash - 2008-02-10 08:46:18http://www.mikeash.com/?page=pyblog/a-tool-for-editing-version-controlled-bundles.html#commentsWhy does anybody use any system that isn't perfect? Because none of them are. <br /> <br />I use subversion because it's familiar, it gets the job done, and it's what everyone else in the company uses. <br /> <br />Offline commits do not concern me. The bundle issue is really a bug with the apps, and only bites me with rtfd files (and obviously the fix is not that hard). Xcode's SCM integration is worthless so that's irrelevant anyway.07020a304ea66e6b167943f1b2d69724Sun, 10 Feb 2008 08:46:18 GMTn[ate]vw - 2008-02-10 07:55:23http://www.mikeash.com/?page=pyblog/a-tool-for-editing-version-controlled-bundles.html#commentsNeat concept, but if I'm going to be using the command line anyway, I think I'd rather just use a version control system that hasn't been ignoring this problem for so long. Is there some deep magical versiony stuff Subversion can do that some developers need? <br /> <br />Both Bazaar or Mercurial have what I know enough to want in a version control system, and the only thing I'm waiting for is Xcode SCM plugin support. Whereas with SVN, I'd be waiting for the bundle issue to finally get fixed, and then waiting for offline commits to maybe eventually get tacked on, and then for Xcode to catch up anyway...8ee6bf8207301cb10fd8ac8f879bb9c3Sun, 10 Feb 2008 07:55:23 GMTMichal - 2008-02-10 07:21:39http://www.mikeash.com/?page=pyblog/a-tool-for-editing-version-controlled-bundles.html#commentsThis was one of themes we've been playing with at CocoaDevHouseMunich06. We wrote an input manager, that swizzles some method[s] in NSDocument, and moves .svn subdirectories out and back when writing of document is performed. <br /> <br />47867e9211932f61a77e03773373611bSun, 10 Feb 2008 07:21:39 GMTmikeash - 2008-02-10 07:08:55http://www.mikeash.com/?page=pyblog/a-tool-for-editing-version-controlled-bundles.html#commentsI believe it's just a side effect of the NSDocument system. I believe the apps get an NSFileWrapper, read the pertinent information, create a new NSFileWrapper with the file's information, and write that back out. They create a new directory with the new contents, rather than reusing the old. Given all this, if they don't explicitly preserve version control directories, they'll disappear. Interface Builder does this correctly but, I believe, only because it does explicitly preserve them. <br /> <br />It would be interesting to write an Input Manager or something like that which would patch NSDocument to fix this system-wide, but I preferred to be a little less ambitious.f1f4813fb4bec9ac298d09016cf5dffeSun, 10 Feb 2008 07:08:55 GMTAdhamh - 2008-02-10 06:43:20http://www.mikeash.com/?page=pyblog/a-tool-for-editing-version-controlled-bundles.html#commentsPages and Numbers do the same thing. I filed a bug about it. <br /> <br />Do you think this is intentional or a side effect of the API they are using? I'm guess they are using one of the write atomically API's and that when the directory is copied to its actual local the .svn directory is blown away.5d5cf7c412142b54fce28df7d18b1da3Sun, 10 Feb 2008 06:43:20 GMT