mirror of
https://github.com/git/git.git
synced 2025-12-12 20:36:24 +01:00
advice.h: add advise_on_moving_dirty_path()
Add an advice. When the user use `git mv --sparse <dirty-path> <destination>`, Git will warn the user to use `git add --sparse <paths>` then use `git sparse-checkout reapply` to apply the sparsity rules. Add a few lines to previous "move dirty path" tests so we can test this new advice is working. Suggested-by: Derrick Stolee <derrickstolee@github.com> Signed-off-by: Shaoxuan Yuan <shaoxuan.yuan02@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
committed by
Junio C Hamano
parent
b6f51e3db9
commit
5efd533ed8
19
advice.c
19
advice.c
@@ -261,3 +261,22 @@ void detach_advice(const char *new_name)
|
||||
|
||||
fprintf(stderr, fmt, new_name);
|
||||
}
|
||||
|
||||
void advise_on_moving_dirty_path(struct string_list *pathspec_list)
|
||||
{
|
||||
struct string_list_item *item;
|
||||
|
||||
if (!pathspec_list->nr)
|
||||
return;
|
||||
|
||||
fprintf(stderr, _("The following paths have been moved outside the\n"
|
||||
"sparse-checkout definition but are not sparse due to local\n"
|
||||
"modifications.\n"));
|
||||
for_each_string_list_item(item, pathspec_list)
|
||||
fprintf(stderr, "%s\n", item->string);
|
||||
|
||||
advise_if_enabled(ADVICE_UPDATE_SPARSE_PATH,
|
||||
_("To correct the sparsity of these paths, do the following:\n"
|
||||
"* Use \"git add --sparse <paths>\" to update the index\n"
|
||||
"* Use \"git sparse-checkout reapply\" to apply the sparsity rules"));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user