Hi Emily, On Fri, May 17, 2019 at 3:40 PM Emily Shaffer <emilyshaffer@xxxxxxxxxx> wrote: > > We check for a handy environment variable GIT_DEBUGGER when running via > bin-wrappers/, but this feature is undocumented. Add a hint to how to > use it into the CodingGuidelines (which is where other useful > environment settings like DEVELOPER are documented). > > It looks like you can use GIT_DEBUGGER to pick gdb by default, or you > can hand it your own debugger if you like to use something else (or if > you want custom flags for gdb). Hopefully document that intent within > CodingGuidelines. Thanks for working on this. > Signed-off-by: Emily Shaffer <emilyshaffer@xxxxxxxxxx> > --- > Maybe this isn't the right place for this patch. But right now git grep > reveals that GIT_DEBUGGER is completely undocumented. Does 'git log --grep=GIT_DEBUGGER' count? ;-) > Alternatively, it might make sense to only add a short blurb about using > GIT_DEBUGGER flag to CodingGuidelines and then documenting how to use it > inside of wrap-for-bin.sh. > > Documentation/CodingGuidelines | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/Documentation/CodingGuidelines b/Documentation/CodingGuidelines > index 32210a4386..e17cd75b50 100644 > --- a/Documentation/CodingGuidelines > +++ b/Documentation/CodingGuidelines > @@ -412,6 +412,11 @@ For C programs: > must be declared with "extern" in header files. However, function > declarations should not use "extern", as that is already the default. > > + - You can launch gdb around your program using the shorthand GIT_DEBUGGER. > + Run `GIT_DEBUGGER=1 ./bin-wrappers/git foo` to simply use gdb as is, or > + run `GIT_DEBUGGER=debugger-binary some-args ./bin-wrappers/git foo` to Missing some quotes around debugger-binary and some-args: + run `GIT_DEBUGGER="debugger-binary some-args" ./bin-wrappers/git foo` to Also, one thing I always wonder about with command documentation like this is whether people will understand that "debugger-binary", "some-args", and "foo" are just placeholders rather than literal text -- and that everything else is literal text and not meant to be placeholders. Does it make since to include a couple examples, or perhaps modify the text somehow to avoid confusion between placeholders and literals, or maybe just tell me I overthinking this? (I've been bit by similar problems in other contexts, so I'm just flagging it for you to consider). Elijah