【发布时间】:2009-12-28 21:46:30
【问题描述】:
我正在尝试将我的 git 存储库与 Microsoft 的 Source Server 功能挂钩,这样调试到我的二进制文件的人会自动从 github.com 拉取源文件。
git show 命令将为我提供所需的正确文件和版本,但由于调试器未在具有项目源代码的本地 git repo 的计算机上运行,我需要“git show”从 github 中提取而不是本地目录。我在想象这样的事情:
git --no-pager "--git-dir=git://github.com/AArnott/dotnetopenid.git" show 93e76d5ff529b6c9921a984c3608c150ed4ee7a3
当 --git-dir 参数是本地目录时,这可以正常工作,但是当它是远程位置时,它会给我一个错误,例如:
致命:不是 git 存储库:'git://github.com/AArnott/dotnetopenid.git'
什么 git 命令会从远程 URL 位置拉取特定文件的特定版本?
【问题讨论】:
-
“看起来充其量我至少需要两个命令”:两个可以捆绑到 one 脚本中的命令,不是吗?甚至是 git 别名。
-
不能假定客户的调试机器上不存在脚本文件。所以命令必须是完全独立的,只依赖于客户必须已经拥有的命令解释器。也就是说,我考虑了一个 PowerShell 命令,因为它可以是一个命令行上的大型脚本。但到目前为止,我一直未能弄清楚如何进行浅层克隆,或者只获取远程 repo 的一个版本。
-
你不能使用 curl 或 wget 从你的 github repo 下载这些文件吗?
-
@jj。只有当 git 主机提供 http 来提供原始文件并且我可以预测 URL 时。没有办法做到这一点,而且一些主机无论如何也不通过 http 提供原始内容。
标签: git