This is a re-roll of
http://article.gmane.org/gmane.comp.version-control.git/286873
It is almost a rewrite of v1, Changes include:
- Make commit_patch_id() a publib helper function, so it can be available to
other modules.
- The new option "--base" will not only record the base commit id(a public
well-known commit),
but also the prerequisite patches's patch ids, then the 0day test robot
could get these info,
thus to checkout the well-known base tree-ish, apply the prerequisite
patches and then the
patches being send can be applied to correct tree to be evaluated. (0day
catches every patch
series to LKML and maintains a patch-id => commit-id database for in-flight
patches.)
- For developers' convenience, we propose a new format.base configuration to
track the base commit
automatically, if current branch the developer work on has its
remote-tracking branch,
the base commit would be the tip commit of the remote branch, if current
branch is not tracked
with any remote branch(eg. checkout by a local branch or a commit), thus its
upstream could not
be obtained, it will just record the parent commit-id of the patch series,
as well as patch-id for
reference.
so here is the text UI:
1) for the cases that exact base commit could be obtained(eithor from manual
input --base=<base-commit-id>
or from upstream if base=auto is set)
** base-commit-info **
base-commit: ab5d01a29eb7380ceab070f0807c2939849c44bc
prerequisite-patch-id: 61400f965fdc0c2fbe8ad9cb5316c3efe6e05c14
prerequisite-patch-id: 063a398ef398647d8d839e6f9090d38ea9e0551c
2) for cases that exact base commit is failed to obtained
** parent-commit-info **
parent-commit: ab5d01a29eb7380ceab070f0807c2939849c44bc
parent-patch-id: caf2dae24db5b4c49a6c4134dd6d9908e898424b
Thanks for fengguang and junio's suggestions and prototype of implementation.
Thanks,
Xiaolong.
Xiaolong Ye (4):
patch-ids: make commit_patch_id() a public helper function
format-patch: add '--base' option to record base tree info
format-patch: introduce --base=auto option
format-patch: introduce format.base configuration
Documentation/git-format-patch.txt | 20 ++++++
builtin/log.c | 137 +++++++++++++++++++++++++++++++++++++
patch-ids.c | 2 +-
patch-ids.h | 2 +
4 files changed, 160 insertions(+), 1 deletion(-)
--
2.8.0.rc4.4.ga41a987
** base-commit-info **
base-commit: 808ecd4cca75acac5e4868f15d3e647fc73698d3
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html