Return-Path: X-Original-To: apmail-subversion-users-archive@minotaur.apache.org Delivered-To: apmail-subversion-users-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 6A29610A90 for ; Thu, 6 Jun 2013 11:49:09 +0000 (UTC) Received: (qmail 74975 invoked by uid 500); 6 Jun 2013 11:49:08 -0000 Delivered-To: apmail-subversion-users-archive@subversion.apache.org Received: (qmail 74858 invoked by uid 500); 6 Jun 2013 11:49:08 -0000 Mailing-List: contact users-help@subversion.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Delivered-To: mailing list users@subversion.apache.org Received: (qmail 74848 invoked by uid 99); 6 Jun 2013 11:49:07 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 06 Jun 2013 11:49:06 +0000 X-ASF-Spam-Status: No, hits=-0.0 required=5.0 tests=RCVD_IN_DNSWL_NONE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: local policy) Received: from [212.227.17.12] (HELO mout.web.de) (212.227.17.12) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 06 Jun 2013 11:48:59 +0000 Received: from [172.20.3.46] ([194.115.214.225]) by smtp.web.de (mrweb003) with ESMTPSA (Nemesis) id 0MDg8k-1Ub9xZ0N3e-00HYN9 for ; Thu, 06 Jun 2013 13:48:39 +0200 Message-ID: <51B07713.5010208@web.de> Date: Thu, 06 Jun 2013 13:48:35 +0200 From: Tobias Bading User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.27) Gecko/20120216 Thunderbird/3.1.19 MIME-Version: 1.0 To: users@subversion.apache.org Subject: Re: Subversion 1.8 appreciation thread References: <51B07347.2090206@web.de> In-Reply-To: <51B07347.2090206@web.de> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V02:K0:4n55cx34Mk+dbyfIjToY+f25mCZkD4eSM7iJMQz8YTP Atltr/ThrOOHcXFJSTLf/x5y/pC9y1nHMBlPQTvi5wTZ1lZy4Z dk2BVz0N4AY+DLIR1N9H5XoaIuNxVZ+N14npp0mnc3p2CnDj0s No8VbX+zDE8tcxATZUmZZak/afAXYfq+1BvQzIWbzOQb8xBUQA TxBycuY1URTtxFEHhmUgQ== X-Virus-Checked: Checked by ClamAV on apache.org Goody #2: (People probably came up with something like this for Subversion 1.7 already... anyway...) Our company currently uses Subversion 1.6 and at first I thought 'duel-Subversioning' 1.6 and 1.8 would lead nowhere except headaches. As it turns out, the fact that a Subversion 1.8 client cannot directly work with a Subversion 1.6 working copy is no problem at all, at least not on GNU/Linux in a shell or GNU Emacs. First, make sure you have both Subversion versions installed and that you have links on your $PATH named svn-1.6 and svn-1.8 that link to the respective binaries. Then create a shell script called svn with this content: (work in progress) --- snip --- #!/bin/bash # check whether the command uses Subversion 1.8 features: usesNewFeature=0 for arg in "$@"; do if [[ "$arg" = "--search" || "$arg" = "--diff" || "$arg" = "--new" || "$arg" = "--old" ]]; then usesNewFeature=1; break; fi done if [[ "$1" = "upgrade" || ( "$1" = "help" && "$2" = "upgrade" ) ]]; then usesNewFeature=1; fi # decide which Subversion version to use: if [[ $usesNewFeature = 0 && -f .svn/entries && "`head -1 .svn/entries`" != "12" ]]; then cmd=svn-1.6 else cmd=svn-1.8 fi # debug logging: # echo `date` "[PWD=$PWD]" -- $cmd "$@" >>~/.svn.log exec $cmd "$@" --- snip --- There you go. A svn command that is able to deal with 1.6 and 1.8 working copies. Those are the two goodies I came up with so far. Who's next? Kind regards, Tobias