我在本地创建了一个目录:第一个月
我在/home/Tegra中创建了以下文件:
hello_world.c hello_world_1.c hello_world_2.c
字符串
每个文件都是递增修改的。我还创建了补丁:
diff -u hello_world.c hello_world_1.c > hello_world_1.patch
diff -u hello_world_1.c hello_world_2.c > hello_world_2.patch
型
1.现在我想先用git send-email发一封邮件到abc@xyz.org.邮箱,里面应该包含hello_world.c文件
1.然后,我想发送第二封电子邮件,其中包含hello_world_1.patch文件作为附件。
1.然后我想发送第三封电子邮件,其中包含hello_world_2.patch文件作为附件。
不幸的是,我甚至无法执行步骤1:
我的git已经正确配置了相关的smtp服务器tls 587端口。
我试着遵循命令:
git send-email --to abc@xyz.org --subject My Hello hello_world.c
型
我得到以下错误:
Cannot run git format-patch from outside a repository
型
仓库在哪里出现。我应该首先维护一个代码库吗?
编辑:步骤1:根据下面的评论,我们需要一个仓库:
1.在Github上创建一个空仓库:“MyRepo”
1.克隆到本地机器上。(使用git clone)
1.然后将第一个文件“hello_world.c”添加到Directory /MyRepo”中。
1.然后>>git add hello_world.c
1.然后>>git commit -m 'My First source'
1.然后>>git push -u original master
1.然后,我输入:git send-email --to=abc@xyz.org --subject="[asdasdas] assd asdasd”hello_world.c
现在我得到一个错误:
No subject line in hello_world.c ? at /usr/lib/git-core/git-send-email line 584
型
1条答案
按热度按时间9rbhqvlz1#
然后将第一个文件“hello_world.c”添加到Directory /MyRepo”中。
首先,确保你在克隆的空仓库中确实提交了任何东西。
字符串
第二,
git send-email
doc确实提到:型
指定电子邮件线程的初始主题。仅当
--compose
也被设置时才需要。确保使用
--compose
。此格式要求文件的第一行包含“
Cc:
”值,第二行包含消息的“Subject:
”。这将适用于
.patch
,而不是源本身。请参阅
git format-patch
和“How to send patches with git-send-email”以获得更完整的示例:对于最后一次提交:
型
第三,更简单的解决方案是use
git bundle
。这会生成一个文件,你可以以任何你想要的方式发送,接收者可以从中提取/克隆。它充当(那个文件)作为一个裸git存储库。