All of lore.kernel.org
 help / color / mirror / Atom feed
From: Phillip Wood <phillip.wood123@gmail.com>
To: Sangeeta NB <sangunb09@gmail.com>, phillip.wood@dunelm.org.uk
Cc: Junio C Hamano <gitster@pobox.com>,
	kaartic.sivaraam@gmail.com, git@vger.kernel.org
Subject: Re: [Outreachy] Introduction
Date: Thu, 15 Oct 2020 15:45:53 +0100	[thread overview]
Message-ID: <8c9b409b-4e44-ca8a-9075-36a7332f9765@gmail.com> (raw)
In-Reply-To: <CAHjREB6i7ZSSXk10OAOXcL-Av3WzesCkMKL2ES_aBRsrynT9DA@mail.gmail.com>

Hi Sangeeta

On 15/10/2020 14:57, Sangeeta NB wrote:
> On Thu, Oct 15, 2020 at 7:09 PM Phillip Wood <phillip.wood123@gmail.com> wrote:
> Hey Phillip,
> 
>> As we store the config options in default_diff_options and then copy
>> them across at the beginning of repo_setup_diff() we can use a flag in
>> struct diff_options which is set by handle_ignore_submodule_arg() to
>> tell if we need to initialize opts->flags.ignore_untracked_in_submodules
>> in repo_setup_diff()
> 
> Even if we don't set a global flag it is working fine because we are
> setting the default first, and would let the config override it. I
> have updated the code in the PR and you can have a look at it. I have
> also added --ignore-submodules=none in some tests to get the results
> mentioned earlier.

Thanks, I'll have a look later

>> Are you adding the printf and then running t3600? If so then the extra
>> line of output breaks a lot of tests which in turn breaks to setup for
>> the test that was failing so there are uncommitted changes.
>> Unfortunately it is hard to run a subset of tests in a lot the test
>> scripts as there are implicit dependencies between the individual tests
>> them.
>>
> Oh, okay it makes sense.
> 
>>
>> I'm afraid I'm still no closer to figuring out why that test in t3600 fails

diff --git a/submodule.c b/submodule.c
index 8f6227c993..c4182be633 100644
--- a/submodule.c
+++ b/submodule.c
@@ -1679,6 +1679,8 @@ unsigned is_submodule_modified(const char *path, 
int ignore_untracked)
         strvec_pushl(&cp.args, "status", "--porcelain=2", NULL);
         if (ignore_untracked)
                 strvec_push(&cp.args, "-uno");
+       else
+               strvec_push (&cp.args, "--ignore-submodules=none");

         prepare_submodule_repo_env(&cp.env_array);
         cp.git_cmd = 1;

fixes it, I'm unsure at the moment if we should be adding the extra flag 
here or setting the appropriate option in status when -uno and 
--ignore-submodules=<option> are both omitted though

> What it is like debugging in Git? I have seen people writing debug
> statements(print statements in between the code) to figure out how
> things are working. But I guess we might not be able to do that. Do we
> have to create the exact environment that is been created by that test
> to check for the code?

Have you setup a config.mak file? Mine looks like

DEVELOPER = 1
SANITIZE = address,leak
CFLAGS += -ggdb3
CFLAGS += -fvar-tracking-assignments
CFLAGS += -fno-omit-frame-pointer

Which will build git with warnings enabled, debugging information and 
enables the address sanitizer. Then you can run the git you have built 
under gdb with

	GIT_DEBUGGER=1 bin-wrappers/git

If you want to debug a particular test then I find adding `test_pause` 
to the test and then running

	GIT_DEBUGGER=1 git

in the shell that the test opens (it sets up the path appropriately). 
You may want to add LSAN_OPTIONS=detect_leaks=0 to the commands above or 
set up a suppressions file

I also use printf quite a bit but it does tend to break other tests 
which can be awkward.

Best Wishes

Phillip

  reply	other threads:[~2020-10-15 14:46 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-07 20:10 [Outreachy] Introduction Sangeeta NB
2020-10-08  9:07 ` Phillip Wood
2020-10-09  7:41   ` Sangeeta NB
2020-10-09 18:29     ` Phillip Wood
2020-10-11 11:30       ` Sangeeta NB
2020-10-12 10:18         ` Phillip Wood
2020-10-12 11:22         ` Kaartic Sivaraam
2020-10-12 15:57         ` Junio C Hamano
2020-10-14 15:52           ` Sangeeta NB
2020-10-15  9:23             ` Phillip Wood
2020-10-15  9:26               ` [PATCH] fixup! diff: do not show submodule with untracked files as "-dirty" Phillip Wood
2020-10-15 10:18               ` [Outreachy] Introduction Sangeeta NB
2020-10-15 13:39                 ` Phillip Wood
2020-10-15 13:57                   ` Sangeeta NB
2020-10-15 14:45                     ` Phillip Wood [this message]
2020-10-16  5:27                       ` Sangeeta NB
2020-10-16 13:26                         ` Phillip Wood
  -- strict thread matches above, loose matches on Subject: below --
2020-10-10 11:48 Charvi Mendiratta
2020-10-11  8:09 ` Christian Couder
     [not found]   ` <CAPSFM5cXN57z56Cvq-NX1H4raS7d8=qXEFDQqpypJfoYzbxcyA@mail.gmail.com>
2020-10-15 18:56     ` Charvi Mendiratta
2020-10-15 19:16       ` Junio C Hamano
2020-10-17  8:09         ` Charvi Mendiratta
2020-10-16  8:28 Zodwa Phakathi
2020-10-16  8:46 ` Christian Couder
     [not found]   ` <CAGdqGXrLN2W_CgqfmfkCSu_hmZ9Ze8A1N9n08bgPRPApSMraSQ@mail.gmail.com>
2020-10-16 10:02     ` Christian Couder
2020-10-16 22:09 Joey S
2020-10-16 23:08 ` Jonathan Nieder
2020-10-17  0:42   ` Joey S
2021-04-07  6:18 Deborah Brouwer
2025-10-08  9:37 Bello Olamide
2025-10-08 15:49 ` Usman Akinyemi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=8c9b409b-4e44-ca8a-9075-36a7332f9765@gmail.com \
    --to=phillip.wood123@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=kaartic.sivaraam@gmail.com \
    --cc=phillip.wood@dunelm.org.uk \
    --cc=sangunb09@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.