Fix git depot_tools update flow.
In Windows (already worked correctly in posix): gclient wouldn't correctly update depot_tools when called. Refactored away the bootstrap depot_tools update flow which only still existed in Windows. Patch contributed by gab@chromium.org R=maruel@chromium.org BUG= TEST=Running `gclient sync` from src/ and see depot_tools being correctly updated under a git depot_tools checkout. Review URL: https://chromiumcodereview.appspot.com/9751009 git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@132191 0039d316-1c4b-4281-b951-d872f2087c98experimental/szager/collated-output
parent
f9b1fdb961
commit
e6c00f3f6f
@ -1,10 +1,22 @@
|
|||||||
@echo off
|
@echo off
|
||||||
:: Copyright (c) 2009 The Chromium Authors. All rights reserved.
|
:: Copyright (c) 2012 The Chromium Authors. All rights reserved.
|
||||||
:: Use of this source code is governed by a BSD-style license that can be
|
:: Use of this source code is governed by a BSD-style license that can be
|
||||||
:: found in the LICENSE file.
|
:: found in the LICENSE file.
|
||||||
|
|
||||||
:: Synchronize the root directory before deferring control back up to it.
|
:: IMPORTANT NOTE:
|
||||||
call "%~dp0\update_depot_tools.bat"
|
:: The bootstrap flow has been removed. This file's only purpose is to make the
|
||||||
|
:: transition smooth as the previous update script called bootstrap\gclient.bat
|
||||||
|
:: The current flow took place on March 21, 2012. This file should be removed
|
||||||
|
:: when it is believed everyone has updated since then.
|
||||||
|
|
||||||
:: Defer control.
|
:: At this point we know %DEPOT_TOOLS_UPDATE% != 0 as in the previous script
|
||||||
python "%~dp0\..\gclient.py" %*
|
:: bootstrap\gclient.bat was only called if this was the case.
|
||||||
|
|
||||||
|
:: Update the root directory. The previous version only supported svn so there
|
||||||
|
:: is no need looking for git here (i.e. if someone has git they can't get to
|
||||||
|
:: this point where the bootstrap dir is gone during the update anyways...)
|
||||||
|
IF NOT EXIST "%~dp0..\.svn\." GOTO :EOF
|
||||||
|
call svn up -q "%~dp0.."
|
||||||
|
|
||||||
|
:: Call the updated gclient.bat in the root directory to wrap the update.
|
||||||
|
call "%~dp0..\gclient.bat"
|
||||||
|
@ -1,17 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
# Copyright (c) 2009 The Chromium Authors. All rights reserved.
|
|
||||||
# Use of this source code is governed by a BSD-style license that can be
|
|
||||||
# found in the LICENSE file.
|
|
||||||
|
|
||||||
# This script will try to sync the root and bootstrap directories.
|
|
||||||
|
|
||||||
base_dir=$(dirname "$0")
|
|
||||||
|
|
||||||
# Skip if $DEPOT_TOOLS_UPDATE==0 or ../.svn/. doesn't exist.
|
|
||||||
if [ "X$DEPOT_TOOLS_UPDATE" != "X0" -a -e "$base_dir/../.svn" ]
|
|
||||||
then
|
|
||||||
# Update the root directory.
|
|
||||||
svn -q up "$base_dir/.."
|
|
||||||
fi
|
|
||||||
|
|
||||||
exec python "$base_dir/../gclient.py" "$@"
|
|
@ -1,15 +0,0 @@
|
|||||||
@echo off
|
|
||||||
:: Copyright (c) 2010 The Chromium Authors. All rights reserved.
|
|
||||||
:: Use of this source code is governed by a BSD-style license that can be
|
|
||||||
:: found in the LICENSE file.
|
|
||||||
|
|
||||||
:: This batch file will try to sync the root directory.
|
|
||||||
|
|
||||||
:: Shall skip automatic update?
|
|
||||||
IF "%DEPOT_TOOLS_UPDATE%" == "0" GOTO :EOF
|
|
||||||
|
|
||||||
:: We can't sync if ..\.svn\. doesn't exist.
|
|
||||||
IF NOT EXIST "%~dp0..\.svn\." GOTO :EOF
|
|
||||||
|
|
||||||
:: Sync the .. directory to update the bootstrap at the same time.
|
|
||||||
call svn -q up "%~dp0.."
|
|
@ -0,0 +1,35 @@
|
|||||||
|
@echo off
|
||||||
|
:: Copyright (c) 2012 The Chromium Authors. All rights reserved.
|
||||||
|
:: Use of this source code is governed by a BSD-style license that can be
|
||||||
|
:: found in the LICENSE file.
|
||||||
|
|
||||||
|
:: This batch file will try to sync the root directory.
|
||||||
|
|
||||||
|
setlocal
|
||||||
|
|
||||||
|
:: Will download svn and python.
|
||||||
|
:: If you don't want to install the depot_tools version of these tools, remove
|
||||||
|
:: the 'force' option on the next command. The tools will be installed only if
|
||||||
|
:: not already in the PATH environment variable.
|
||||||
|
call "%~dp0bootstrap\win\win_tools.bat" force
|
||||||
|
if errorlevel 1 goto :EOF
|
||||||
|
|
||||||
|
:: Shall skip automatic update?
|
||||||
|
IF "%DEPOT_TOOLS_UPDATE%" == "0" GOTO :EOF
|
||||||
|
|
||||||
|
:: We need either .\.svn\. or .\.git\. to be able to sync.
|
||||||
|
IF EXIST "%~dp0.svn\." GOTO :SVN_UPDATE
|
||||||
|
IF EXIST "%~dp0.git\." GOTO :GIT_UPDATE
|
||||||
|
echo Error updating depot_tools, no revision tool found.
|
||||||
|
goto :EOF
|
||||||
|
|
||||||
|
|
||||||
|
:SVN_UPDATE
|
||||||
|
call svn up -q "%~dp0."
|
||||||
|
goto :EOF
|
||||||
|
|
||||||
|
|
||||||
|
:GIT_UPDATE
|
||||||
|
cd /d "%~dp0."
|
||||||
|
call git svn rebase -q -q
|
||||||
|
goto :EOF
|
Loading…
Reference in New Issue