使用代字号或插入符号&g; ls-remote'

时间:2014-06-21 18:54:45

标签: git

我正在使用git ls-remote在我没有克隆的存储库中获取分支的哈希值。

git ls-remote ssh://gitosis@myServer/myRepo.git master

我有兴趣指定像master~之类的提交,并使用git ls-remote来确定它的提交哈希是什么。

Git支持吗?

2 个答案:

答案 0 :(得分:1)

  

Git支持吗?

不,正如我在" Show git logs for range of commits on remote server?"

中解释的那样
  

它适用于参考模式(头部,标签,分支......),而不适用于转速

您需要先获取,以便检查origin/master~


Intended use

  

自定义,也许是hackish,应用程序。
  它是用户向系统发出请求以构建和安装特定版本软件的机制   它支持build_request SomeProject someBranch   为了完整起见,我认为它应该支持someBranch~的请求。

我想可以设置一种Web服务,一种能够解释用户查询并在该公共服务器上执行git log master~的侦听器。 那个听众与git没什么关系。

答案 1 :(得分:0)

如果您的存储库由Github托管,则部分解决方案包括使用REST API。通过为shaper_pagepage参数指定值可以调整结果。一般模式是

https://api.github.com/repos/USER/REPOSITORY/commits?per_page=NUMBER&sha=SHA_OR_NAME&page=NUMBER

...例如可以从the URL develop..develop~20 ...

检索simelo/skycoin-hardware-wallet存储库中https://api.github.com/repos/skycoin/hardware-wallet/commits?per_page=20&sha=develop范围内的提交的SHA。

...,而develop~15..develop~40仓库中simelo/skycoin-hardware-wallet范围内的提交的SHA可以从this URL https://api.github.com/repos/skycoin/hardware-wallet/commits?per_page=15&sha=develop&page=2检索,然后是从this one {{ 1}}

有关如何从命令行完成此操作的更多说明,请咨询this question