git-p4: don't use name-rev to get current branch
git-p4 was using "git name-rev" to find out the current branch. That is not safe, since if multiple branches or tags point at the same revision, the result obtained might not be what is expected. Instead use "git symbolic-ref". Signed-off-by: Luke Diamand <luke@diamand.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
78871bf46f
commit
eff451101d
@ -602,12 +602,7 @@ def p4Where(depotPath):
|
||||
return clientPath
|
||||
|
||||
def currentGitBranch():
|
||||
retcode = system(["git", "symbolic-ref", "-q", "HEAD"], ignore_error=True)
|
||||
if retcode != 0:
|
||||
# on a detached head
|
||||
return None
|
||||
else:
|
||||
return read_pipe(["git", "name-rev", "HEAD"]).split(" ")[1].strip()
|
||||
return read_pipe_text(["git", "symbolic-ref", "--short", "-q", "HEAD"])
|
||||
|
||||
def isValidGitDir(path):
|
||||
return git_dir(path) != None
|
||||
|
@ -139,7 +139,7 @@ test_expect_success 'submit with master branch name from argv' '
|
||||
)
|
||||
'
|
||||
|
||||
test_expect_failure 'allow submit from branch with same revision but different name' '
|
||||
test_expect_success 'allow submit from branch with same revision but different name' '
|
||||
test_when_finished cleanup_git &&
|
||||
git p4 clone --dest="$git" //depot &&
|
||||
(
|
||||
|
Loading…
Reference in New Issue
Block a user