{"thread":{"id":"64532","subject":"How to localize \"git push\"?","startedAt":"2025-11-26T08:06:05Z","lastAt":"2025-11-27T23:11:40Z","messageCount":2,"participants":["Peter Krefting","brian m. carlson"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"531285","messageId":"f2cb6da7c17e8de829c3e4cb066684e2@softwolves.pp.se","threadId":"64532","inReplyTo":null,"subject":"How to localize \"git push\"?","fromName":"Peter Krefting","fromEmail":"peter@softwolves.pp.se","sentAt":"2025-11-26T07:50:15Z","receivedAt":"2025-11-26T08:06:05Z","isPatch":false,"sender":{"key":"peter@softwolves.pp.se","avatar":"https://avatars.githubusercontent.com/u/990764?v=4"},"body":"Hi!\n\nRe: https://fosstodon.org/@McPringle/115611195011002487\n\nThe message shown when running \"git push\" without any changes queued is \nalways shown in English, whereas the corresponding message in \"git pull\" \nis properly localized.\n\nI looked at the sources, and the string \"Everything up-to-date\\n\" is \nincluded in both builtin/send-pack.c and transport.c, with both \ninstances annotated with a comment \"stable plumbing output; do not \nmodify or localize\".\n\nHow do we fix that? Having the message show in English from \"git push\" \nis confusing. What is the corresponding plumbing command that needs to \nhave it machine-readable, so that we can fork that to fix \"git push\"?\n\n-- \n\\\\// Peter - http://www.softwolves.pp.se/\n"},{"id":"531386","messageId":"aSjZKl17Vz4fMXxu@fruit.crustytoothpaste.net","threadId":"64532","inReplyTo":"f2cb6da7c17e8de829c3e4cb066684e2@softwolves.pp.se","subject":"Re: How to localize \"git push\"?","fromName":"brian m. carlson","fromEmail":"sandals@crustytoothpaste.net","sentAt":"2025-11-27T23:05:14Z","receivedAt":"2025-11-27T23:11:40Z","isPatch":false,"sender":{"key":"sandals@crustytoothpaste.net","avatar":"https://avatars.githubusercontent.com/u/497054?v=4"},"body":"On 2025-11-26 at 07:50:15, Peter Krefting wrote:\n> Hi!\n\nHi,\n\n> Re: https://fosstodon.org/@McPringle/115611195011002487\n> \n> The message shown when running \"git push\" without any changes queued is\n> always shown in English, whereas the corresponding message in \"git pull\" is\n> properly localized.\n> \n> I looked at the sources, and the string \"Everything up-to-date\\n\" is\n> included in both builtin/send-pack.c and transport.c, with both instances\n> annotated with a comment \"stable plumbing output; do not modify or\n> localize\".\n> \n> How do we fix that? Having the message show in English from \"git push\" is\n> confusing. What is the corresponding plumbing command that needs to have it\n> machine-readable, so that we can fork that to fix \"git push\"?\n\nThere isn't any tooling in Git that requires that particular message but\nit's rather that other software outside of Git may depend on that\noutput.\n\nIt should be noted that \"Everything up-to-date\" should actually be\n\"Everything up to date\", since it's an abbreviated form of \"everything\nis up to date\" and for most compound adjectives, we only hyphenate them\nin English before the noun they modify.  However, because there was\nsupposedly existing software that expected that output, we chose not to\nmodify those messages at the time that cleanup went in.  I am, however,\nunable to find any such software that expects that string on GitHub with\na quick search.\n\nPersonally, I'm fine with modifying that message unless something like a\n`--plumbing` argument is given (or just letting people set\n`LC_ALL=C.UTF-8` if they want fixed output), but other people may not\nbe.\n\nI will say that we changed the following message sometime back for\nlocalization (to uppercase the N in \"Needed\") and it broke things at my\nlast company, but we also easily fixed it and I'm pleased that it's now\nlocalized:\n\n----\n% git rev-parse --verify nonexistent\nfatal: Needed a single revision\n% LC_ALL=es_MX.UTF-8 git rev-parse --verify nonexistent\nfatal: Se necesitó una revisión singular\n% LC_ALL=fr_CA.UTF-8 git rev-parse --verify nonexistent\nfatal : Une seule révision attendue\n----\n-- \nbrian m. carlson (they/them)\nToronto, Ontario, CA\n"}]}