从git pull和git fetch到txt文件中回显git消息/输出

问题描述 投票:-1回答:1

我在云端有一个存储库。为了我个人的需要,我试图在我自己的服务器上备份(是的,我知道这是愚蠢的)。我已经在那里安装了git并通过Windows命令行使用它。

我创建了一个每天晚上11点运行的任务,用于从云端获取/拉取最后的更改。

现在我想在获取或拉取后将结果输出到txt文件中。我怎么做?

我的bat文件如下所示。不知何故,这不起作用,只有文字“已经是最新的”。过来。

d:
cd D:\git\myRepo
echo: >> log.txt
echo %date:~0% - %time:~0,8% Uhr >> log.txt
git fetch .>> log.txt
echo: >> log.txt
git pull .>> log.txt 
echo: >> log.txt 
windows git cmd
1个回答
1
投票

这是一个有趣的故障排除。问题出在..>>。我首先假设.>>是Windows cmd重定向语法的一部分,但事实并非如此。你正在运行的是git fetch .git pull .,并将这些命令的日志附加到log.txt。用.>>替换>>然后你就定了。

如果你想让stderr与stdout一起保存在log.txt中,这就是我在第一次阅读这个问题时所假设的.>>,这对我有用:

d:
cd D:\git\myRepo
echo: >> log.txt
echo %date:~0% - %time:~0,8% Uhr >> log.txt
git fetch >> log.txt 2>&1
echo: >> log.txt
git pull >> log.txt 2>&1
echo: >> log.txt 

回到git fetch .git pull .,我的实验让我得出结论,.是你当前沙盒的参考,这可以解释为什么从.拉/取总是说Already up to date.我通过比较git remote show .git remote show origin得出这个结论,虽然我找不到使用这种方式的.的任何文档。

© www.soinside.com 2019 - 2024. All rights reserved.