{"thread":{"id":"15552","subject":"git-branch manpage question","startedAt":"2008-09-16T14:46:13Z","lastAt":"2008-09-16T16:25:50Z","messageCount":2,"participants":["Mark Struberg","Michael J Gruber"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"90837","messageId":"957350.34177.qm@web27803.mail.ukl.yahoo.com","threadId":"15552","inReplyTo":null,"subject":"git-branch manpage question","fromName":"Mark Struberg","fromEmail":"struberg@yahoo.de","sentAt":"2008-09-16T14:46:13Z","receivedAt":"2008-09-16T14:46:13Z","isPatch":false,"sender":{"key":"struberg@yahoo.de","avatar":"https://gravatar.com/avatar/119742c3e8dbc8db35a92bdff0581aec8d364d415f770e60431cba262daa974f?d=mp&s=160"},"body":"Hi!\n\nI think i found an inconsistency in the documentation of the git-branch command:\n\n*snip*\n--track::\n\t.... Set the\n\tbranch.autosetupmerge configuration variable to `false` if you want\n\t'git-checkout' and 'git-branch' to always behave as if \n\t'--no-track' were given...\n*snip*\n\nand \n\n*snip*\n--no-track::\n\tIgnore the branch.autosetupmerge configuration variable.\n\n*snip*\n\nSo, the description of branch.autosetupmerge is referencing --no-track and vice versa, thus the effective documentation is essentially missing as far as I understand.\n\ntxs and LieGrue,\nstrub\n\n__________________________________________________\nDo You Yahoo!?\nSie sind Spam leid? Yahoo! Mail verfügt über einen herausragenden Schutz gegen Massenmails. \nhttp://mail.yahoo.com \n"},{"id":"90844","messageId":"48CFDE0E.4020806@drmicha.warpmail.net","threadId":"15552","inReplyTo":"957350.34177.qm@web27803.mail.ukl.yahoo.com","subject":"Re: git-branch manpage question","fromName":"Michael J Gruber","fromEmail":"git@drmicha.warpmail.net","sentAt":"2008-09-16T16:25:50Z","receivedAt":"2008-09-16T16:25:50Z","isPatch":false,"sender":{"key":"git@grubix.eu","avatar":"https://avatars.githubusercontent.com/u/233215?v=4"},"body":"Mark Struberg venit, vidit, dixit 16.09.2008 16:46:\n> Hi!\n> \n> I think i found an inconsistency in the documentation of the\n> git-branch command:\n> \n> *snip* --track:: .... Set the branch.autosetupmerge configuration\n> variable to `false` if you want 'git-checkout' and 'git-branch' to\n> always behave as if '--no-track' were given... *snip*\n> \n> and\n> \n> *snip* --no-track:: Ignore the branch.autosetupmerge configuration\n> variable.\n> \n> *snip*\n> \n> So, the description of branch.autosetupmerge is referencing\n> --no-track and vice versa, thus the effective documentation is\n> essentially missing as far as I understand.\n\nWell, what's missing is the explanation that \"--no-track\" is the\nopposite of \"--track\".  Do we really need to stress that?\n\nThe explanation of \"--track\" is in the \"....\", you left it out in your\nquote.\n\nMaybe the formulation is a bit suboptimal because it's squeezed more or\nless forcibly into the option list concept. At \"--track\" there is a\ndescription of what is meant by a tracking branch configuration. Now,\nthe logical flow is:\n\nIf --track is given, set up tracking.\nIf --no-track is given, don't set up tracking.\nIf none is given, check branch.autosetupmerge:\nIf it is false, don't set up tracking.\nIf it is always, set up tracking.\nIf it is unset (or true), check what kind of start point we branch off from:\nIf it is a remote, set up tracking.\nIf it is not a remote, don't set up tracking.\n\nAdmittedly, the description at --track is a bit contrived. But if you\nread the DESCRIPTION section before the options things should become\nclear. Maybe git-branch(1) should reference git-config(1).\n\nCheers,\nMichael\n"}]}