哪个推送 Refspec (Git) 是正确的?或者两者都是正确的?有什么区别?
refs/heads/*:refs/heads/origin/*
refs/heads/*:refs/heads/*
我更喜欢(1),因为它引用了远程名称(来源),我不明白(2)是什么意思(但我看到它在一些手册中使用!)。
哪个推送 Refspec (Git) 是正确的?或者两者都是正确的?有什么区别?
refs/heads/*:refs/heads/origin/*
refs/heads/*:refs/heads/*
我更喜欢(1),因为它引用了远程名称(来源),我不明白(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/master
与refs/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