{"thread":{"id":"12604","subject":"Unclear error message in \"git remote update\"","startedAt":"2008-03-09T12:37:55Z","lastAt":"2008-03-12T05:10:18Z","messageCount":3,"participants":["Samuel Tardieu","Johannes Schindelin","Junio C Hamano"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"71514","messageId":"2008-03-09-13-37-55+trackit+sam@rfc1149.net","threadId":"12604","inReplyTo":null,"subject":"Unclear error message in \"git remote update\"","fromName":"Samuel Tardieu","fromEmail":"sam@rfc1149.net","sentAt":"2008-03-09T12:37:55Z","receivedAt":"2008-03-09T12:37:55Z","isPatch":false,"sender":{"key":"sam@rfc1149.net","avatar":"https://avatars.githubusercontent.com/u/44656?v=4"},"body":"One of my colleague seems to have destroyed one of its head in his\nprivate repository. When fetching from it through \"git remote update\"\nusing next, the repository name is not output:\n\n% git remote update\nerror: refs/heads/2.0-uobjects points nowhere!\n\nUsing master, I get:\n\n% git remote update\nUpdating core\nUpdating matthieu\nerror: refs/heads/2.0-uobjects points nowhere!\nUpdating origin\n\nwhich is IMO much clearer. Also, I like seeing what remote repository\nit is updating from in case anything gets stuck or slow.\n\nAny objection to reinstating the message as does the following patch?\n\nFrom: Samuel Tardieu <sam@rfc1149.net>\nDate: Sun, 9 Mar 2008 13:33:44 +0100\nSubject: [PATCH] builtin remote update: print remote name being fetched from\n\nReinstate the message \"Updating <name>\" in git remote update.\n\nSigned-off-by: Samuel Tardieu <sam@rfc1149.net>\n---\n builtin-remote.c |    1 +\n 1 files changed, 1 insertions(+), 0 deletions(-)\n\ndiff --git a/builtin-remote.c b/builtin-remote.c\nindex ca3bf26..65d90e1 100644\n--- a/builtin-remote.c\n+++ b/builtin-remote.c\n@@ -46,6 +46,7 @@ static int opt_parse_track(const struct option *opt, const char *arg, int not)\n static int fetch_remote(const char *name)\n {\n \tconst char *argv[] = { \"fetch\", name, NULL };\n+\tprintf(\"Updating %s\\n\", name);\n \tif (run_command_v_opt(argv, RUN_GIT_CMD))\n \t\treturn error(\"Could not fetch %s\", name);\n \treturn 0;\n-- \n1.5.4.3.611.g29c00\n\n"},{"id":"71526","messageId":"alpine.LSU.1.00.0803092152150.3975@racer.site","threadId":"12604","inReplyTo":"2008-03-09-13-37-55+trackit+sam@rfc1149.net","subject":"Re: Unclear error message in \"git remote update\"","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2008-03-09T20:52:32Z","receivedAt":"2008-03-09T20:52:32Z","isPatch":false,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Sun, 9 Mar 2008, Samuel Tardieu wrote:\n\n> One of my colleague seems to have destroyed one of its head in his\n> private repository. When fetching from it through \"git remote update\"\n> using next, the repository name is not output:\n> \n> % git remote update\n> error: refs/heads/2.0-uobjects points nowhere!\n> \n> Using master, I get:\n> \n> % git remote update\n> Updating core\n> Updating matthieu\n> error: refs/heads/2.0-uobjects points nowhere!\n> Updating origin\n> \n> which is IMO much clearer. Also, I like seeing what remote repository\n> it is updating from in case anything gets stuck or slow.\n> \n> Any objection to reinstating the message as does the following patch?\n\nNone from me.\n\nThanks,\nDscho\n"},{"id":"71780","messageId":"7vve3s7cjp.fsf@gitster.siamese.dyndns.org","threadId":"12604","inReplyTo":"2008-03-09-13-37-55+trackit+sam@rfc1149.net","subject":"Re: Unclear error message in \"git remote update\"","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2008-03-12T05:10:18Z","receivedAt":"2008-03-12T05:10:18Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Samuel Tardieu <sam@rfc1149.net> writes:\n\n> One of my colleague seems to have destroyed one of its head in his\n> private repository. When fetching from it through \"git remote update\"\n> using next, the repository name is not output:\n>\n> % git remote update\n> error: refs/heads/2.0-uobjects points nowhere!\n>\n> Using master, I get:\n>\n> % git remote update\n> Updating core\n> Updating matthieu\n> error: refs/heads/2.0-uobjects points nowhere!\n> Updating origin\n>\n> which is IMO much clearer. Also, I like seeing what remote repository\n> it is updating from in case anything gets stuck or slow.\n>\n> Any objection to reinstating the message as does the following patch?\n\nI do not have objections, but it feels that the message for normal case\n(success) is cluttering the output.\n\nIf the remote repository is in a bad shape to solicit a \"points nowhere\"\nerror, perhaps\n\n (1) that error message should be squelched out completely, as it does not\n     affect the outcome of the fetch anyway, or\n\n (2) the dangling symref should cause \"fetch\" to error out but with a\n     different error status than the total failure case, so that this\n     caller can tell it is a non-grave error, or\n\n (3) the dangling symref should actually make the fetch fail, as the\n     remote repository is corrupt.\n\nFor now I'll take your patch, but this is something we may want to\nclean-up in 1.6.0 timeframe.\n"}]}