“Talk is cheap. Show me the code.”
——Linus Torvalds, founder of Linux and Git.
git format-patch origin/master..HEAD
From: Author Name <author@email>
Subject: [PATCH] first line of commit message
more commit message...
---
diff --git ...
<content of patch>
邮件头中的 Subject: 字段是邮件标题,使用 [PATCH] 作为标题前缀,以提交说明的第一行作为标题内容。
更多的提交说明作为邮件内容,和邮件头之间用一个空行分隔开。
用分隔符 --- 作为提交说明的结束。
在分隔符 --- 和 diff --git 开始的补丁内容之间的文字被忽略。通常此处内容是提交的变更统计,开发者也可以在此处写入不宜列入提交说明中的附加说明。
一个特性由多个提交构成,分散在多个提交中的提交说明难以描述整个特性,可以使用 --cover-letter 参数,生成一封编号为 0000 的邮件,作为后续提交的摘要说明,便于评审者理解代码。
一个特性通常会多次迭代,就需要为每次迭代设置不同的版本。这就要用到 -v {num} 参数指定补丁的版本。版本将体现在邮件标题中,例如第二版本的补丁,邮件标题将使用 [PATCH v2] 作为前缀。
回复特定邮件,以便形成可追踪的邮件线索,使用参数 --in-reply-to="{Message-ID}",为电子邮件生成相关的 In-Reply-To: 和 References: 头信息。
默认提交本身的作者、提交说明的签名区(trailer)提及的贡献者会自动添加为邮件的收件人。要添加更多参与者,可以使用 --to={email}、--cc={email} 参数。
s/waring/warning/
Subject: Re: whatever thread you're in
Somebody else said:
> blah blah blah
I disagree. You should do it like this instead:
-- >8 --
first line of commit message
more commit message
---
diff --git ...
Signed-off-by: User <Email> :通常由代码的贡献者(Author)和代码合入时的提交者(Committer)提供的签名。可由命令 git commit -s 、 git am -s 等命令自动添加。
Reported-by: User <Email> :问题的报告者。
Helped-by: User <Email>:对提交有过帮助的人。
Reviewed-by: User <Email> :评审者。
refs/pull/{ID}/head :关联 pull request 的源提交。
refs/pull/{ID}/merge :对于没有冲突的 pull request,这个引用指向一个成功的合并提交。
git fetch origin refs/pull/123/head
git switch -d FETCH_HEAD
git push origin HEAD:refs/for/master/topic1
git pr
git fetch origin refs/merge-requests/123/head
git switch -d FETCH_HEAD
git download 123
git pr -c 123
阿里云开发者社区
世界读书日,来读书吧
4月23日是第26个世界读书日,阿里云开发者社区推出“记录阅读之路,影响同行之人”活动,6位阿里技术人为同学们分享他们看过的好书,开发者藏经阁也推出了最受大家欢迎的电子书。
点击“阅读原文”,推荐曾经影响你的书,来一起读书吧~