[PATCH] D67389: [git-llvm] Do not reinvent `@{upstream}` (take 2)
David Zarzycki via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Sep 10 01:44:34 PDT 2019
davezarzycki created this revision.
davezarzycki added reviewers: mehdi_amini, jyknight, rupprecht, rnk.
davezarzycki added a project: LLVM.
This makes git-llvm more of a thin wrapper around git while temporarily maintaining backwards compatibility with past git-llvm behavior.
Using `@{upstream}` makes git-llvm more robust when used with a nontrivial local repository.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D67389
Files:
llvm/utils/git-svn/git-llvm
Index: llvm/utils/git-svn/git-llvm
===================================================================
--- llvm/utils/git-svn/git-llvm
+++ llvm/utils/git-svn/git-llvm
@@ -190,16 +190,16 @@
def get_default_rev_range():
- # Get the branch tracked by the current branch, as set by
- # git branch --set-upstream-to See http://serverfault.com/a/352236/38694.
- cur_branch = git('rev-parse', '--symbolic-full-name', 'HEAD')
- upstream_branch = git('for-each-ref', '--format=%(upstream:short)',
- cur_branch)
- if not upstream_branch:
- upstream_branch = 'origin/master'
-
# Get the newest common ancestor between HEAD and our upstream branch.
- upstream_rev = git('merge-base', 'HEAD', upstream_branch)
+ upstream_rev = git('merge-base', 'HEAD', '@{upstream}', ignore_errors=True)
+ if not upstream_rev:
+ eprint("Warning: git-llvm assumes that origin/master is the upstream "
+ "branch but git does not.")
+ eprint("To make this warning go away: git branch -u origin/master")
+ eprint("To avoid this warning when creating branches: "
+ "git checkout -b MyBranchName origin/master")
+ upstream_rev = git('merge-base', 'HEAD', 'origin/master')
+
return '%s..' % upstream_rev
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D67389.219490.patch
Type: text/x-patch
Size: 1300 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190910/1ca5e9cf/attachment.bin>
More information about the llvm-commits
mailing list