如何 fetch/pull 多个分支匹配通配符字符串?
How do I fetch/pull multiple branches matching a wildcard string?
目标:
我有几个由相同规则管理的存储库。我想创建一个 git 别名来帮助获取 and/or 只拉取相关分支,而不获取与我不关心的工作相关的许多远程分支的信息。我希望最终结果能让我的日志输出保持干净和易于管理,同时仍然提供我的相关信息。
细节:
我想要一个命令来拉 "master" 和任何以 "development/" 开头的分支(即 development/2.0...)。我想避免获取其他几个分支。这些通常采用以 "integration/" 或 "personal/".
开头的形式
我得到了什么:
由于 "git fetch --help" 中的评论,我现在知道 git 瓷器是什么,下面是我如何使用它:
git fetch origin master:master -u
这甚至可以用来获得 master 和 1 个开发分支:
git fetch origin master:master development/2.0:development/2.0 -u
但是我无法将它扩展到每个开发分支而不单独列出它们(这似乎什么都不做):
git fetch origin development/*:development/* -u
在此先感谢您的帮助!
我不知道您可以在命令行上执行此操作,但您可以通过在 git 配置中配置 refspec 来执行此操作。
配置通常看起来像这样。
[remote "origin"]
fetch = +refs/heads/*:refs/remotes/origin/*
url = .....
我想你会想要这样的东西(未经测试)
[remote "origin"]
fetch = +refs/heads/development/*:refs/remotes/origin/*
fetch = +refs/heads/master:refs/remotes/origin/*
url = .....
虽然从中获取的行可能需要更像这些但我不确定
fetch = +refs/heads/development/*:refs/remotes/origin/development/*
fetch = +refs/heads/master:refs/remotes/origin/master
目标: 我有几个由相同规则管理的存储库。我想创建一个 git 别名来帮助获取 and/or 只拉取相关分支,而不获取与我不关心的工作相关的许多远程分支的信息。我希望最终结果能让我的日志输出保持干净和易于管理,同时仍然提供我的相关信息。
细节: 我想要一个命令来拉 "master" 和任何以 "development/" 开头的分支(即 development/2.0...)。我想避免获取其他几个分支。这些通常采用以 "integration/" 或 "personal/".
开头的形式我得到了什么: 由于 "git fetch --help" 中的评论,我现在知道 git 瓷器是什么,下面是我如何使用它:
git fetch origin master:master -u
这甚至可以用来获得 master 和 1 个开发分支:
git fetch origin master:master development/2.0:development/2.0 -u
但是我无法将它扩展到每个开发分支而不单独列出它们(这似乎什么都不做):
git fetch origin development/*:development/* -u
在此先感谢您的帮助!
我不知道您可以在命令行上执行此操作,但您可以通过在 git 配置中配置 refspec 来执行此操作。
配置通常看起来像这样。
[remote "origin"]
fetch = +refs/heads/*:refs/remotes/origin/*
url = .....
我想你会想要这样的东西(未经测试)
[remote "origin"]
fetch = +refs/heads/development/*:refs/remotes/origin/*
fetch = +refs/heads/master:refs/remotes/origin/*
url = .....
虽然从中获取的行可能需要更像这些但我不确定
fetch = +refs/heads/development/*:refs/remotes/origin/development/*
fetch = +refs/heads/master:refs/remotes/origin/master