Git push Refspecs:`refs / heads / *:refs / heads / origin`与`refs / heads / *:refs / heads / *`

时间:2019-06-12 12:30:29

标签: git refspec git-refspec

哪个推Refspec(Git)是正确的?还是两者都正确?有什么区别?

  1. refs/heads/*:refs/heads/origin/*
  2. refs/heads/*:refs/heads/*

我更喜欢(1),因为它引用了远程名称(起源),而且我不理解(2)的含义(但我在某些手册中看到了它!)。

1 个答案:

答案 0 :(得分:2)

使用refs/heads/*:refs/heads/origin/*git push origin master将扩展为git push origin refs/heads/master:refs/heads/origin/master。它将在远程存储库中创建或更新名为origin/master的分支。这是有效的,但refs/heads/origin/masterrefs/remotes/origin/master可能会模棱两可。在某些情况下,它可能会导致错误。

第二个有效。使用remote.origin.push=refs/heads/*:refs/heads/*git push扩展为git push origin refs/heads/master:refs/heads/master refs/heads/dev:refs/heads/dev,而git push origin master扩展为git push origin refs/heads/master:refs/heads/master