将文本保存到存储库而不创建文件?

Save text to repository without creating a file?

有没有什么方法可以在不创建文件的情况下将回显输出保存到存储库? 创建文件时,命令如下所示:

回声“你好世界”> readme.txt | git 添加 readme.txt

我想在不创建 readme.txt 文件的情况下将“hello world”添加到存储库。

提前致谢。

echo "hello world" | git hash-object -w --stdin

git-hash-object - Compute object ID and optionally creates a blob from a file

参考:git hash-object

-w

实际将对象写入对象数据库。

--stdin

从标准输入而不是文件中读取对象。

命令 returns blob 对象的 SHA1(对象 ID)。您可以使用 git show <SHA1> 打印其内容。

正如@torek 在评论中指出的那样,该对象可能会被丢弃。要保存它,您可以通过 git tag <tagname> <SHA1> 创建一个标签来引用它。稍后,您可以使用标签而不是 SHA1。