<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/builtin/checkout.c, branch gitk-resize-error</title>
<subtitle>Fork of git SCM with my patches.</subtitle>
<id>http://git.kilabit.info/git/atom?h=gitk-resize-error</id>
<link rel='self' href='http://git.kilabit.info/git/atom?h=gitk-resize-error'/>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/'/>
<updated>2022-01-24T17:14:46Z</updated>
<entry>
<title>Merge branch 'ab/checkout-branch-info-leakfix'</title>
<updated>2022-01-24T17:14:46Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2022-01-24T17:14:46Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=c6e19e47a60c0174f805db8e1624db38ff889523'/>
<id>urn:sha1:c6e19e47a60c0174f805db8e1624db38ff889523</id>
<content type='text'>
We added an unrelated sanity checking that leads to a BUG() while
plugging a leak, which triggered in a repository with symrefs in
the local branch namespace that point at a ref outside.  Partially
revert the change to avoid triggering the BUG().

* ab/checkout-branch-info-leakfix:
  checkout: avoid BUG() when hitting a broken repository
</content>
</entry>
<entry>
<title>checkout: avoid BUG() when hitting a broken repository</title>
<updated>2022-01-22T01:04:50Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2022-01-22T00:58:30Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=519947b69a9ea1461d5f5afc762823835295b3b2'/>
<id>urn:sha1:519947b69a9ea1461d5f5afc762823835295b3b2</id>
<content type='text'>
When 9081a421 (checkout: fix "branch info" memory leaks, 2021-11-16)
cleaned up existing memory leaks, we added an unrelated sanity check
to ensure that a local branch is truly local and not a symref to
elsewhere that dies with BUG() otherwise.  This was misguided in two
ways.  First of all, such a tightening did not belong to a leak-fix
patch.  And the condition it detected was *not* a bug in our program
but a problem in user data, where warning() or die() would have been
more appropriate.

As the condition is not fatal (the result of computing the local
branch name in the code that is involved in the faulty check is only
used as a textual label for the commit), let's revert the code to
the original state, i.e. strip "refs/heads/" to compute the local
branch name if possible, and otherwise leave it NULL.  The consumer
of the information in merge_working_tree() is prepared to see NULL
in there and act accordingly.

cf. https://bugzilla.redhat.com/show_bug.cgi?id=2042920

Reported-by: Petr Šplíchal &lt;psplicha@redhat.com&gt;
Reported-by: Todd Zullinger &lt;tmz@pobox.com&gt;
Helped-by: Ævar Arnfjörð Bjarmason &lt;avarab@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'js/branch-track-inherit'</title>
<updated>2022-01-20T23:25:38Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2022-01-20T23:25:38Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=297ca895a27a6bbdb7906371d533f72a12ad25b2'/>
<id>urn:sha1:297ca895a27a6bbdb7906371d533f72a12ad25b2</id>
<content type='text'>
"git branch -h" incorrectly said "--track[=direct|inherit]",
implying that "--trackinherit" is a valid option, which has been
corrected.
source: &lt;3de40324bea6a1dd9bca2654721471e3809e87d8.1642538935.git.steadmon@google.com&gt;
source: &lt;c3c26192-aee9-185a-e559-b8735139e49c@web.de&gt;

* js/branch-track-inherit:
  branch,checkout: fix --track documentation
</content>
</entry>
<entry>
<title>branch,checkout: fix --track documentation</title>
<updated>2022-01-20T19:07:51Z</updated>
<author>
<name>René Scharfe</name>
<email>l.s.r@web.de</email>
</author>
<published>2022-01-20T12:35:54Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=6327f0efed36c64d98a140110171362b7cb75a52'/>
<id>urn:sha1:6327f0efed36c64d98a140110171362b7cb75a52</id>
<content type='text'>
Document that the accepted variants of the --track option are --track,
--track=direct, and --track=inherit.  The equal sign in the latter two
cannot be replaced with whitespace; in general optional arguments need
to be attached firmly to their option.

Put "direct" consistently before "inherit", if only for the reasons
that the former is the default, explained first in the documentation,
and comes before the latter alphabetically.

Mention both modes in the short help so that readers don't have to look
them up in the full documentation.  They are literal strings and thus
untranslatable.  PARSE_OPT_LITERAL_ARGHELP is inferred due to the pipe
and parenthesis characters, so we don't have to provide that flag
explicitly.

Mention that -t has the same effect as --track and --track=direct.
There is no way to specify inherit mode using the short option, because
short options generally don't accept optional arguments.

Signed-off-by: René Scharfe &lt;l.s.r@web.de&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'js/branch-track-inherit'</title>
<updated>2022-01-19T00:02:23Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2022-01-19T00:02:23Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=af4e5f569bc89f356eb34a9373d7f82aca6faa8a'/>
<id>urn:sha1:af4e5f569bc89f356eb34a9373d7f82aca6faa8a</id>
<content type='text'>
"git branch -h" incorrectly said "--track[=direct|inherit]",
implying that "--trackinherit" is a valid option, which has been
corrected.

* js/branch-track-inherit:
  branch,checkout: fix --track usage strings
</content>
</entry>
<entry>
<title>branch,checkout: fix --track usage strings</title>
<updated>2022-01-18T22:08:15Z</updated>
<author>
<name>Josh Steadmon</name>
<email>steadmon@google.com</email>
</author>
<published>2022-01-18T20:49:46Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=15f002812f858b49ce7641eb191561843cf31f00'/>
<id>urn:sha1:15f002812f858b49ce7641eb191561843cf31f00</id>
<content type='text'>
As Ævar pointed out in [1], the use of PARSE_OPT_LITERAL_ARGHELP with a
list of allowed parameters is not recommended. Both git-branch and
git-checkout were changed in d311566 (branch: add flags and config to
inherit tracking, 2021-12-20) to use this discouraged combination for
their --track flags.

Fix this by removing PARSE_OPT_LITERAL_ARGHELP, and changing the arghelp
to simply be "mode". Users may discover allowed values in the manual
pages.

[1]: https://lore.kernel.org/git/220111.86a6g3yqf9.gmgdl@evledraar.gmail.com/

Signed-off-by: Josh Steadmon &lt;steadmon@google.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'ja/i18n-similar-messages'</title>
<updated>2022-01-10T19:52:56Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2022-01-10T19:52:56Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=c17de5a505a2da23fcbfefdc8b0aad3f045a510f'/>
<id>urn:sha1:c17de5a505a2da23fcbfefdc8b0aad3f045a510f</id>
<content type='text'>
Similar message templates have been consolidated so that
translators need to work on fewer number of messages.

* ja/i18n-similar-messages:
  i18n: turn even more messages into "cannot be used together" ones
  i18n: ref-filter: factorize "%(foo) atom used without %(bar) atom"
  i18n: factorize "--foo outside a repository"
  i18n: refactor "unrecognized %(foo) argument" strings
  i18n: factorize "no directory given for --foo"
  i18n: factorize "--foo requires --bar" and the like
  i18n: tag.c factorize i18n strings
  i18n: standardize "cannot open" and "cannot read"
  i18n: turn "options are incompatible" into "cannot be used together"
  i18n: refactor "%s, %s and %s are mutually exclusive"
  i18n: refactor "foo and bar are mutually exclusive"
</content>
</entry>
<entry>
<title>Merge branch 'js/branch-track-inherit'</title>
<updated>2022-01-10T19:52:54Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2022-01-10T19:52:54Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=0669bdf4ebc095a2b26654292e1ff38245ccf88a'/>
<id>urn:sha1:0669bdf4ebc095a2b26654292e1ff38245ccf88a</id>
<content type='text'>
"git -c branch.autosetupmerge=inherit branch new old" makes "new"
to have the same upstream as the "old" branch, instead of marking
"old" itself as its upstream.

* js/branch-track-inherit:
  config: require lowercase for branch.*.autosetupmerge
  branch: add flags and config to inherit tracking
  branch: accept multiple upstream branches for tracking
</content>
</entry>
<entry>
<title>i18n: turn even more messages into "cannot be used together" ones</title>
<updated>2022-01-05T21:31:00Z</updated>
<author>
<name>Jean-Noël Avila</name>
<email>jn.avila@free.fr</email>
</author>
<published>2022-01-05T20:02:24Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=246cac85055f513626159e8cd20b741eaf5f9f97'/>
<id>urn:sha1:246cac85055f513626159e8cd20b741eaf5f9f97</id>
<content type='text'>
Even if some of these messages are not subject to gettext i18n, this
helps bring a single style of message for a given error type.

Signed-off-by: Jean-Noël Avila &lt;jn.avila@free.fr&gt;
Reviewed-by: Johannes Sixt &lt;j6t@kdbg.org&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>i18n: factorize "--foo requires --bar" and the like</title>
<updated>2022-01-05T21:31:00Z</updated>
<author>
<name>Jean-Noël Avila</name>
<email>jn.avila@free.fr</email>
</author>
<published>2022-01-05T20:02:19Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=6fa00ee843cb6c8e720180b4642590f5bcc9c8cf'/>
<id>urn:sha1:6fa00ee843cb6c8e720180b4642590f5bcc9c8cf</id>
<content type='text'>
They are all replaced by "the option '%s' requires '%s'", which is a
new string but replaces 17 previous unique strings.

Signed-off-by: Jean-Noël Avila &lt;jn.avila@free.fr&gt;
Reviewed-by: Johannes Sixt &lt;j6t@kdbg.org&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
</feed>
