如何获得类似gitadd的摘要--交互式



我正在寻找一个Bash命令(或命令序列),它可以打印Git工作副本中更改文件的摘要。摘要应该包括每个文件中插入和删除的次数,以及它们是否已暂存。

命令git add --interactive(与git add -i同义)正好给出了我想要的摘要(加上其他内容)。问题是,它不只是打印和退出,它启动了一个完整的非Bash shell。这是我喜欢的git add -i部分:

bash$ git add -i
staged     unstaged path
1:    unchanged        +3/-0 trunk/src/analyzer.c
2:    unchanged       +5/-13 trunk/src/converter.c

这是一个很好的总结。不幸的是,打印出来后,你还没有回到Bash。要返回Bash,您需要键入q,然后输入退出。我真的希望它只是打印摘要,然后停止。

以下是我尝试过的:

  1. 在Bash终端中键入以下内容:git add -i; q。这不起作用,它仍然需要您手动按下q,然后由于第二个q而出现错误。

  2. 将以下内容放入脚本gitsummary.sh中,然后运行它:git add -i,末尾有或没有; q。同样的问题。

如何以完全非交互式的方式获取此摘要?我能想到两种可能的解决方案:

  1. 使用Bash技巧,等待几秒钟,然后模拟按键。

  2. 使用不同的Git命令打印相同的信息,但不会启动一个奇怪的小shell。

我的主要设置:Mac OS X 10.9和终端(运行/bin/bash)。

我的第二个设置:Windows 7或8和Cygwin运行Bash。

其中任何一个都应该提供您想要的:

git diff --numstat
git diff --stat

相关内容

  • 没有找到相关文章

最新更新