Christian Couder <chrisc...@tuxfamily.org> writes:
> If -f option, which means '--force', is used, we can allow an object
> to be replaced with one of a different type, as the user should know
> what (s)he is doing.
> Signed-off-by: Christian Couder <chrisc...@tuxfamily.org>
This does not matter in a larger picture, but between 1/11 and this
patch, there is a window where an operation that has been useful in
some workflows becomes unavailable to the user.
For future reference, it would be better to do this as a part of
1/11, to make sure that there always is an escape hatch available to
> builtin/replace.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
> diff --git a/builtin/replace.c b/builtin/replace.c
> index 9a94769..95736d9 100644
> --- a/builtin/replace.c
> +++ b/builtin/replace.c
> @@ -103,7 +103,7 @@ static int replace_object(const char *object_ref, const
> char *replace_ref,
> obj_type = sha1_object_info(object, NULL);
> repl_type = sha1_object_info(repl, NULL);
> - if (obj_type != repl_type)
> + if (!force && obj_type != repl_type)
> die("Objects must be of the same type.\n"
> "'%s' points to a replaced object of type '%s'\n"
> "while '%s' points to a replacement object of type '%s'.",
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html