Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(310)

Side by Side Diff: checkout.py

Issue 202483008: Assume 'master' when remote branch not specified. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/tools/depot_tools
Patch Set: Fix apply_issue Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « apply_issue.py ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # coding=utf8 1 # coding=utf8
2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be 3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file. 4 # found in the LICENSE file.
5 """Manages a project checkout. 5 """Manages a project checkout.
6 6
7 Includes support for svn, git-svn and git. 7 Includes support for svn, git-svn and git.
8 """ 8 """
9 9
10 import ConfigParser 10 import ConfigParser
(...skipping 544 matching lines...) Expand 10 before | Expand all | Expand 10 after
555 555
556 class GitCheckout(CheckoutBase): 556 class GitCheckout(CheckoutBase):
557 """Manages a git checkout.""" 557 """Manages a git checkout."""
558 def __init__(self, root_dir, project_name, remote_branch, git_url, 558 def __init__(self, root_dir, project_name, remote_branch, git_url,
559 commit_user, post_processors=None, base_ref=None): 559 commit_user, post_processors=None, base_ref=None):
560 super(GitCheckout, self).__init__(root_dir, project_name, post_processors) 560 super(GitCheckout, self).__init__(root_dir, project_name, post_processors)
561 self.base_ref = base_ref 561 self.base_ref = base_ref
562 self.git_url = git_url 562 self.git_url = git_url
563 self.commit_user = commit_user 563 self.commit_user = commit_user
564 self.remote_branch = remote_branch 564 self.remote_branch = remote_branch
565 assert self.remote_branch
565 # The working branch where patches will be applied. It will track the 566 # The working branch where patches will be applied. It will track the
566 # remote branch. 567 # remote branch.
567 self.working_branch = 'working_branch' 568 self.working_branch = 'working_branch'
568 # There is no reason to not hardcode origin. 569 # There is no reason to not hardcode origin.
569 self.pull_remote = 'origin' 570 self.pull_remote = 'origin'
570 self.push_remote = 'upstream' 571 self.push_remote = 'upstream'
571 572
572 def prepare(self, revision): 573 def prepare(self, revision):
573 """Resets the git repository in a clean state. 574 """Resets the git repository in a clean state.
574 575
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
615 name=None, email=None): 616 name=None, email=None):
616 """Applies a patch on 'working_branch' and switches to it. 617 """Applies a patch on 'working_branch' and switches to it.
617 618
618 Also commits the changes on the local branch. 619 Also commits the changes on the local branch.
619 620
620 Ignores svn properties and raise an exception on unexpected ones. 621 Ignores svn properties and raise an exception on unexpected ones.
621 """ 622 """
622 post_processors = post_processors or self.post_processors or [] 623 post_processors = post_processors or self.post_processors or []
623 # It this throws, the checkout is corrupted. Maybe worth deleting it and 624 # It this throws, the checkout is corrupted. Maybe worth deleting it and
624 # trying again? 625 # trying again?
625 if self.remote_branch: 626 if self.remote_branch:
Ryan Tseng 2014/03/19 01:54:28 Maybe "if self.remote_branch and not self.base_ref
626 self._check_call_git( 627 self._check_call_git(
627 ['checkout', '-b', self.working_branch, '-t', self.remote_branch, 628 ['checkout',
629 '-b', self.working_branch,
630 '-t', '%s/%s' % (self.pull_remote, self.remote_branch),
agable 2014/03/18 21:19:09 Ravi: apply_issue was checking out a branch tracki
628 '--quiet']) 631 '--quiet'])
629 632
630 for index, p in enumerate(patches): 633 for index, p in enumerate(patches):
631 stdout = [] 634 stdout = []
632 try: 635 try:
633 filepath = os.path.join(self.project_path, p.filename) 636 filepath = os.path.join(self.project_path, p.filename)
634 if p.is_delete: 637 if p.is_delete:
635 if (not os.path.exists(filepath) and 638 if (not os.path.exists(filepath) and
636 any(p1.source_filename == p.filename for p1 in patches[0:index])): 639 any(p1.source_filename == p.filename for p1 in patches[0:index])):
637 # The file was already deleted if a prior patch with file rename 640 # The file was already deleted if a prior patch with file rename
(...skipping 181 matching lines...) Expand 10 before | Expand all | Expand 10 after
819 def revisions(self, rev1, rev2): 822 def revisions(self, rev1, rev2):
820 return self.checkout.revisions(rev1, rev2) 823 return self.checkout.revisions(rev1, rev2)
821 824
822 @property 825 @property
823 def project_name(self): 826 def project_name(self):
824 return self.checkout.project_name 827 return self.checkout.project_name
825 828
826 @property 829 @property
827 def project_path(self): 830 def project_path(self):
828 return self.checkout.project_path 831 return self.checkout.project_path
OLDNEW
« no previous file with comments | « apply_issue.py ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698