我试图访问远程存储库上的分支的提交历史记录.我看了一下doc但是找不到任何关于如何使用我的本地git客户端访问远程repo的提交历史的实质性信息.
Lop*_*Sae 236
git log remotename/branchname
Run Code Online (Sandbox Code Playgroud)
将在该存储库中显示给定远程分支的日志,但仅显示已从其存储库"获取"到远程存储库的个人"副本"的日志.
请记住,您的存储库克隆只会通过执行来更新其任何远程分支的状态git fetch.您无法直接连接到服务器以检查日志,您所做的是下载服务器的状态,git fetch然后在本地查看远程分支的日志.
也许另一个有用的命令可能是:
git log HEAD..remote/branch
Run Code Online (Sandbox Code Playgroud)
它将显示远程分支中的提交,但不会显示当前分支(HEAD)中的提交.
小智 55
git remote add origin <remote reference>
git fetch
git log origin/master
Run Code Online (Sandbox Code Playgroud)
ste*_*r25 13
我不确定何时添加了过滤,但如果您只想获取历史记录/引用日志,这是一种排除对象 blob 的方法:
git clone --filter=blob:none --no-checkout --single-branch --branch master git://some.repo.git .
git log
Run Code Online (Sandbox Code Playgroud)
oco*_*odo 11
您只能查看本地存储库上的日志,但是这可以包括您已设置的所有远程控制器的已获取分支.
所以,如果你克隆一个回购...
git clone git@gitserver:folder/repo.git
Run Code Online (Sandbox Code Playgroud)
这将默认为origin/master.
除了origin我们添加之外,你可以在这个仓库中添加一个遥控器production.从本地clone文件夹中:
git remote add production git@production-server:folder/repo.git
Run Code Online (Sandbox Code Playgroud)
如果我们想要查看production我们需要做的日志:
git fetch --all
Run Code Online (Sandbox Code Playgroud)
这是从所有遥控器获取(默认提取,不会--all从中获取origin)
获取后我们可以查看production遥控器上的日志,您还必须指定分支.
git log production/master
Run Code Online (Sandbox Code Playgroud)
所有选项都可以像登录本地分支一样工作.
use*_*690 10
我不相信这是可能的.我相信你必须在本地克隆那个远程仓库,并git fetch在你发出git log反对之前对其进行执行.
dav*_*vvs 10
一种快速的方法是使用--bare关键字克隆,然后检查日志:
git clone --bare git@giturl tmpdir
cd tmpdir
git log branch
Run Code Online (Sandbox Code Playgroud)
Fel*_*ger 10
这对我有用:
git fetch --all
git log production/master
Run Code Online (Sandbox Code Playgroud)
请注意,这是从所有遥控器中获取的,即可能"必须克隆2GB的对象才能查看提交日志".