gpt4 book ai didi

git: "branchname"和 "refs/heads/branchname"之间的区别

转载 作者:IT王子 更新时间:2023-10-29 00:34:06 25 4
gpt4 key购买 nike

最好在示例中进行解释:我在存储库的分支 0.58 上,这是他的 pull 方式:

git pull origin 0.58

当我调用“git pull”时,我得到:

ip238:openlierox az$ git pull
You asked me to pull without telling me which branch you
want to merge with, and 'branch.0.58.merge' in
your configuration file does not tell me either. Please
name which branch you want to merge on the command line and
try again (e.g. 'git pull <repository> <refspec>').
See git-pull(1) for details on the refspec.

If you often merge with the same branch, you may want to
configure the following variables in your configuration
file:

branch.0.58.remote = <nickname>
branch.0.58.merge = <remote-ref>
remote.<nickname>.url = <url>
remote.<nickname>.fetch = <refspec>

See git-config(1) for details.

当我检查那个分支时,似乎我可能忘记了一些选项(--track?)。不管怎样,我现在已经设置好了:

git config branch.0.58.merge 0.58
git config branch.0.58.remote origin

这似乎有效。然后,出于兴趣,我看了一些关于这些设置的其他分支:

ip238:openlierox az$ git config branch.0.57.merge
refs/heads/0.57
ip238:openlierox az$ git config branch.0.57.remote
origin

我现在想知道,“0.58”之间有区别还是我应该指定“refs/heads/0.58”?

到底有什么区别?

最佳答案

ref 是指向提交的任何内容,例如分支(头)、标签和远程分支。你应该在你的 .git/refs 目录中看到 heads、remotes 和 tags,假设你的存储库中有所有三种类型的引用。

refs/heads/0.58 指定一个名为 0.58 的分支。如果你不指定 ref 所在的命名空间,git 将在默认的命名空间中查找。这使得仅使用 0.58 可能会变得模棱两可——您可以同时拥有一个名为 0.58 的分支和一个标签。

关于git: "branchname"和 "refs/heads/branchname"之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1526471/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com