我正在尝试访问远程存储库上的分支提交历史记录。我看了一下文档,但没有找到任何关于如何使用本地git客户端访问远程回购的提交历史的实质性信息。


当前回答

我不相信这是可能的。我相信你必须在本地克隆远程repo,并在它上执行git取回,然后才能对它发布git日志。

其他回答

我正在寻找包含特定提交的远程分支

下面是一个快速脚本,您可以使用它作为示例

spark 
✦ ❯ cat run.sh
for b in $(git branch -r)
do

    hasKryoCommit=$(git log "$b" | grep 3e033035a3c0b7d46c2ae18d0d322d4af3808711)
    if test -n "$hasKryoCommit"
    then
        echo "$b"
    fi
done

spark 
✦ ❯ bash run.sh
origin/HEAD
fatal: unrecognized argument: ->
origin/master
origin/branch-2.4
origin/branch-3.0
origin/branch-3.1
origin/branch-3.2
origin/master

一个快速的方法是使用——bare关键字进行克隆,然后检查日志:

git clone --bare git@giturl tmpdir
cd tmpdir
git log branch

NB。下面的“origin”用于表示克隆存储库的上游,将“origin”替换为远程回购的描述性名称。“remote reference”与“clone”命令格式相同。

git remote add origin <remote reference>
git fetch
git log origin/master

您可以很容易地获得远程服务器的日志。 方法如下:

(1)如果通过ssh使用git -那么只需使用你的git登录名和密码登录到远程服务器-并chdir你的存储库所在的远程文件夹-然后在远程服务器上的存储库中运行"git log"命令。

(2)如果通过Unix的标准登录协议使用git,那么只需telnet到远程服务器并在那里执行git日志。

希望这能有所帮助。

您只能在本地存储库上查看日志,但是其中可以包括已设置的所有远程的提取分支。

所以,如果你克隆一个回购…

git clone git@gitserver:folder/repo.git

这将默认为origin/master。

你可以添加一个远程到这个回购,除了原点让我们添加生产。在本地克隆文件夹中:

git remote add production git@production-server:folder/repo.git

如果我们想查看生产日志,我们需要做的是:

git fetch --all 

从所有的远程(默认获取没有——ALL将只从原点获取)

获取之后,我们可以查看生产远程上的日志,您还必须指定分支。

git log production/master

所有选项都将像登录本地分支一样工作。