将Git Bash的输出导入到剪贴板

67

我经常需要将我的Git输出传达给我的友好代码伙伴。 我知道的最好方法是这样做:

Right-click Git Bash title bar > Edit > Mark > Select lines > Enter

哇,我选择的所有内容都被复制到了剪贴板,我感到很高兴。

问题是,这样太无聊了,我希望我与Git的关系充满激情魅力

在Windows中,你可以像这样将控制台输出导入到剪贴板中:

C:\> dir | clip

惊人吧?当你尝试在Git Bash中做一些事情时,会发生以下情况:

> git branch | clip
sh.exe": clip: command not found

这让我感到很难过。在Windows上,有没有一种方法可以将Git Bash的输出导入剪贴板,以便我再次充满喜悦?

5个回答

93

实际上,git branch | clip 对我来说很有效。 clip 命令只是从 C:\Windows\System32\ 调用 clip.exe。确保你已经在你的 PATH 中安装了 clip.exe


2
这个方法管用!经过一番搜索,我发现你必须在git-bash内部设置PATH变量,而不仅仅是作为一个环境变量。 - Bucket
1
哇,太神奇了。但是这里的答案有点烦人。对于我们大多数人来说,我们不仅想要复制git分支。以下是如何复制文件内容的方法:cat [file] | clip。现在你可以在任何地方使用ctrl+v黏贴它,耶! - starmandeluxe
2
太棒了!开箱即用! - Tore Aurstad
是的,是的,还有是的。谢谢。 - Erutan409

52

复制thing.txt到剪贴板

cat thing > /dev/clipboard
将剪贴板的内容放入thing.txt文件中。
cat /dev/clipboard > thing.txt
我将这些东西用pbcopy和pbpaste作为别名,这样我就感觉像在使用我的mac一样。

7
我认为这是最佳答案。 - rfcoder89
1
最佳答案 - 这个可以正确处理 utf-8 编码。使用管道传输到 clip.exe 会出现问题。 - codeape
哇!在Windows GitBash上/dev/clipboard可用! - NeilG
哇!在Windows GitBash上,/dev/clipboard居然可以用了! - undefined

5

@madhead的回答是正确的 - 必须从git-bash中设置PATH变量。以下是如何解决此问题的详细说明,由Cairnarvon在superuser上的答案提供:

要检查当前设置为什么PATH:

> echo $PATH

如果是64位架构,设置方法如下:

> export PATH="$PATH:/c/Windows/System32:/c/Windows/SysWOW64"

git branch | clip 的结果:

* master
  dev
  dev_foo

2

对于Mac用户,您可以将git diff输出简单地导入到pbcopy实用程序中。类似这样:

git diff | pbcopy

只需复制更改内容,无需先从终端突出显示所有git差异,然后将其粘贴到某个位置。


0

复制 Git Bash 控制台的所有内容最简单的方法:
在控制台上任何位置右键单击 > 全选

相同操作的键盘快捷键:Ctrl+Shift+A
通过启用选项 > 键 > Ctrl+Shift+字母快捷键来启用此键盘快捷键。

mintty 版本:3.4.4(x86_64-pc-mysys)[Windows 19042]


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接