{"thread":{"id":"64217","subject":"The description of push.default=simple is misleading","startedAt":"2025-09-27T11:24:41Z","lastAt":"2025-09-27T11:24:41Z","messageCount":1,"participants":["雨 欣"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"527478","messageId":"SJ0PR20MB515802EF2B4A04688D01D2FFE419A@SJ0PR20MB5158.namprd20.prod.outlook.com","threadId":"64217","inReplyTo":null,"subject":"The description of push.default=simple is misleading","fromName":"雨 欣","fromEmail":"yuxin_yuye2024@outlook.com","sentAt":"2025-09-27T11:24:39Z","receivedAt":"2025-09-27T11:24:41Z","isPatch":false,"sender":{"key":"yuxin_yuye2024@outlook.com","avatar":null},"body":"The description of the simple value for push.default differs between https://git-scm.com/docs/git-config and https://git-scm.com/docs/git-push, and the former is misleading:\n \nsimple - push the current branch with the same name on the remote.\nIf you are working on a centralized workflow (pushing to the same repository you pull from, which is typically origin), then you need to configure an upstream branch with the same name.\nThis mode is the default since Git 2.0, and is the safest option suited for beginners.\n \nComparing with the description in https://git-scm.com/docs/git-push:\n \nWhen neither the command-line nor the configuration specifies what to push, the default behavior is used, which corresponds to the simple value for push.default: the current branch is pushed to the corresponding upstream branch, but as a safety measure, the push is aborted if the upstream branch does not have the same name as the local one.\n \nIn the former, the word \"if\" makes it sound as though an upstream branch is only required in some cases, but in reality it is always required."}]}