TEST=none
BUG=none
Move scm functions into a class to make it simpler to manage.
Review URL: http://codereview.chromium.org/391052
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@32057 0039d316-1c4b-4281-b951-d872f2087c98
ssh://test@example.com wasn't being parsed correctly for revinfo.
Fixed by factoring out all code which splits url into a base_url
and revision.
Review URL: http://codereview.chromium.org/391048
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@31910 0039d316-1c4b-4281-b951-d872f2087c98
* Add revinfo as part of SCMWrapper interface.
* Implement revinfo for git and svn.
* Add unit tests.
Review URL: http://codereview.chromium.org/362008
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@31280 0039d316-1c4b-4281-b951-d872f2087c98
print messages unless the underlying commands actually generate output.
This is a more conservative version of r28271.
BUG=none
TEST=none
R=maruel
Review URL: http://codereview.chromium.org/344004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@30296 0039d316-1c4b-4281-b951-d872f2087c98
This reverts commit 28058.
BUG=24081
TEST=gclient sync without --force is not working anymore.
TBR=dpranke
Review URL: http://codereview.chromium.org/269006
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@28271 0039d316-1c4b-4281-b951-d872f2087c98
Its side-effect caused tree breakages, at least on the try slaves.
TBR=dpranke
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/251095
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@28058 0039d316-1c4b-4281-b951-d872f2087c98
messages when --verbose is specified or when something actually happens.
Also, remove --manually_grab_svn_rev, because we need this to happen all
the time to get gclient update to shut up if we're comparing against HEAD.
It doesn't look like there are any real side effects of removing this.
An alternative change would be to wrap this behind a --quiet flag.
Note that the change to tests/trychange_unittest.py is an unrelated fix to get
all the tests to pass.
R=maruel@chromium.org
TEST=none
BUG=none
Review URL: http://codereview.chromium.org/257023
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@28039 0039d316-1c4b-4281-b951-d872f2087c98
Replaced a call to CaptureSVNStatus with a SCMWrapper::status
gclient: store gclient_entries as a dict
Currently we only store the relative path for entries.
We need to also store the url so that learn the repo type: git or snv.
Review URL: http://codereview.chromium.org/248011
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@27370 0039d316-1c4b-4281-b951-d872f2087c98
Currently, revision numbers are stored as int. This won't work
for git's SHA1s. So storing revisions as strings.
Review URL: http://codereview.chromium.org/208060
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@26940 0039d316-1c4b-4281-b951-d872f2087c98
This is for situations where the solution is checked out by another SCM
mechanism (e.g. update-webkit or just svn co) but we want to use gclient to
fetch the dependencies.
Review URL: http://codereview.chromium.org/211057
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@26876 0039d316-1c4b-4281-b951-d872f2087c98
gclient_scm: use a map for deciding whether or not the scm is supported
gclient_scm: add a checks for unsupported scm and unimplemented method
git_scm: pull out svn code into SVNWrapper
gclient_scm: create a create_scm factory method
Use a factory method to abstract SCMWrapper creation. This method
will eventually return the correct subclass of SCMWrapper. Initially,
there will only be SVNWrapper.
Review URL: http://codereview.chromium.org/215022
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@26823 0039d316-1c4b-4281-b951-d872f2087c98
This method will eventually return the correct subclass of SCMWrapper. Initially, there will only be SVNWrapper.
gclient_scm: add test for unsupported scm
gclient_scm: make SCMWrapper constructor parameters non-optional
gclient_scm: add a checks for unsupported scm and unimplemented method
git_scm: pull out svn code into SVNWrapper
gclient_scm: create a create_scm factory method
TEST=
BUG=none
Review URL: http://codereview.chromium.org/216014
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@26602 0039d316-1c4b-4281-b951-d872f2087c98
Part of a larger refactoring to abstract SCM-specific bits.
presubmit_support, revert, gcl: modify to import gclient_scm and gclient_utils
Part of a larger refactoring to abstract SCM-specific bits.
revert, gcl: modify to import gclient_scm and gclient_utils
Part of a larger refactoring to abstract SCM-specific bits.
gclient: pull out SCM bits
Pulled out SCMWrapper into gcliet_scm.py as part of a larger refactoring to
abstract SCM-specific bits. Plan is to evenutally add git support.
Pulling out SCMWrapper also required pulling out utility functions into
a gclient_utility.py.
Patch contributed by msb@
TEST=none
BUG=none
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@26423 0039d316-1c4b-4281-b951-d872f2087c98
name of the top level "DEPS" file of a solution from within the .gclient spec.
This allows users to edit their gclient once and use a different (perhaps
experimental) DEPS file instead of the traditionally named "DEPS".
Review URL: http://codereview.chromium.org/203040
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@26031 0039d316-1c4b-4281-b951-d872f2087c98
the root of the source tree. It is similar to "gclient diff", and
shares much of the implementation, but it seems that developers may
want the semantics of each in different situations, which is why it is
being added as a new command.
Generalized SubprocessCallAndCapture into SubprocessCallAndFilter.
Added RunSVNAndFilterOutput; changed RunSVNAndGetFileList to use it.
Fixed problem in presubmit_canned_checks.py where it was not working
on Windows. Updated unit tests for gclient.
Review URL: http://codereview.chromium.org/193004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@25410 0039d316-1c4b-4281-b951-d872f2087c98
Based on Mark Mentovai's mail.
Review URL: http://codereview.chromium.org/164068
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@22616 0039d316-1c4b-4281-b951-d872f2087c98
the --delete_unversioned flag is specified. This only affects the update
command. Reverts will still delete the unversioned tree.
Review URL: http://codereview.chromium.org/125147
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@19021 0039d316-1c4b-4281-b951-d872f2087c98
Bail off as soon as there is anything showing up on svn status.
TBR=sgk
Review URL: http://codereview.chromium.org/113319
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@15929 0039d316-1c4b-4281-b951-d872f2087c98
This was breaking gclient revert on unversioned files.
TEST=ran "for %a in (tests\*test.py) do python %a" and all tests succeeded.
Review URL: http://codereview.chromium.org/115264
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@15894 0039d316-1c4b-4281-b951-d872f2087c98
- Fix gclient revert/status when one of the dependency directory is deleted.
- Remove an unneeded svn update after svn checkout.
- Updated tests.
Review URL: http://codereview.chromium.org/100256
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@15068 0039d316-1c4b-4281-b951-d872f2087c98