Return-Path: Delivered-To: apmail-couchdb-dev-archive@www.apache.org Received: (qmail 32848 invoked from network); 6 Jan 2009 14:28:46 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 6 Jan 2009 14:28:46 -0000 Received: (qmail 5719 invoked by uid 500); 6 Jan 2009 14:28:45 -0000 Delivered-To: apmail-couchdb-dev-archive@couchdb.apache.org Received: (qmail 5677 invoked by uid 500); 6 Jan 2009 14:28:45 -0000 Mailing-List: contact dev-help@couchdb.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@couchdb.apache.org Delivered-To: mailing list dev@couchdb.apache.org Received: (qmail 5666 invoked by uid 99); 6 Jan 2009 14:28:45 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 06 Jan 2009 06:28:45 -0800 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of adam.kocoloski@gmail.com designates 74.125.46.30 as permitted sender) Received: from [74.125.46.30] (HELO yw-out-2324.google.com) (74.125.46.30) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 06 Jan 2009 14:28:36 +0000 Received: by yw-out-2324.google.com with SMTP id 3so2314941ywj.5 for ; Tue, 06 Jan 2009 06:28:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:from:to :content-type:content-transfer-encoding:mime-version:subject:date :x-mailer; bh=A09Z0MZbl9nqxu0BzsUIRx/erCnGCFBee30UeYwAduI=; b=YUMh4aW6mKPkMJ5a+Fvb2nEir4iBZOEKXZkz4tDnz2Y/iWTuK0zJ9Pkn5a97ALvOSH 7qQc5WTbW1YuA7Uu95PkbKgv8+JriUeGNCmvQnRB1VUkYk00wwrnW5wJT8ieQn3sdoLE gr6QBlpTCZYW0QnaDI+BX381FYcPvJvrqMsZw= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:from:to:content-type:content-transfer-encoding :mime-version:subject:date:x-mailer; b=APX4yHjUrsDYaTTtNQ+aHNhdg2U85otHcWEGDyHLtwu3SVzl5ZGB5ucB4Y9LWCA1g4 I/knV93bfuVtZehNPw4J5FTmeC3MvZ6B8qEknlIqFRb5NNJMrTArNRJidvW3IHmyGfii 2Q700rUyAfDWYASM80UNyMhUYWb2IBdr7GfUM= Received: by 10.100.134.10 with SMTP id h10mr11658076and.150.1231252095377; Tue, 06 Jan 2009 06:28:15 -0800 (PST) Received: from ?10.0.1.3? (c-66-31-20-188.hsd1.ma.comcast.net [66.31.20.188]) by mx.google.com with ESMTPS id c28sm21182898anc.7.2009.01.06.06.28.13 (version=TLSv1/SSLv3 cipher=RC4-MD5); Tue, 06 Jan 2009 06:28:14 -0800 (PST) Message-Id: From: Adam Kocoloski To: dev@couchdb.apache.org Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit Mime-Version: 1.0 (Apple Message framework v930.3) Subject: merging the new github master into an old branch Date: Tue, 6 Jan 2009 09:28:12 -0500 X-Mailer: Apple Mail (2.930.3) X-Virus-Checked: Checked by ClamAV on apache.org Hi, I have a few topic branches that I forked off of the old git-svn repo run by Jim Lindley on GitHub. I'd like to keep these branches up- to-date with trunk, but this is complicated slightly by the fact that the preferred git mirror for CouchDB is now the one run by Tim Carey- Smith (halorgium), which has a different working tree structure than jlindley's old one. Here's what I did, hopefully someone else finds it useful. All commands are executed with the topic branch checked out ... 1) Reorganize the topic branch's working tree to look like halorgium's master: git rm -r branches site supplement tags vendor git commit -m "don't include SVN branches, tags, etc. in working tree" git mv trunk/* . rmdir trunk git commit -m "move trunk contents to root" 2) Find the latest SVN commit that shows up in the new master and my topic branch. The git objects corresponding to that SVN commit will be different. Merge that commit from master into the branch: git merge d9a5ce0955f28373eeeab9537a37bc549f3da013 3) Step 2 almost certainly required some manual conflict resolution, but hopefully we minimized it by choosing the latest common SVN commit. Now we can merge all the newer changes in trunk. I tried doing this with a git-rebase, but rebase didn't know how to handle the step where I moved trunk's contents into the working tree, so: git merge master I'm not a git pro by any means, so I'd be happy to hear if there are other, better ways of handling this. Best, Adam