All of lore.kernel.org
 help / color / mirror / Atom feed
* [GSoC] My Git Dev Blog — Week 6
@ 2021-06-27 11:24 Atharva Raykar
  2021-06-27 17:01 ` Felipe Contreras
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Atharva Raykar @ 2021-06-27 11:24 UTC (permalink / raw)
  To: Git List; +Cc: Christian Couder, Shourya Shukla, Kaartic Sivaraam

Here's the latest instalment of my weekly Git blog:
https://atharvaraykar.me/gitnotes/week6

A peek:

  * Project progress and current strategy.
    (mostly relevant to mentors)

  * Reflections:
    - How does Git even start?
      (https://atharvaraykar.me/gitnotes/week6#how-does-git-even-start)
      This was just something I was curious about, not really important
      to my project. If anyone knows the answer to what I asked in that,
      section, it would be nice to know!

Thanks.
---
Atharva Raykar
ಅಥರ್ವ ರಾಯ್ಕರ್
अथर्व रायकर


^ permalink raw reply	[flat|nested] 6+ messages in thread

* RE: [GSoC] My Git Dev Blog — Week 6
  2021-06-27 11:24 [GSoC] My Git Dev Blog — Week 6 Atharva Raykar
@ 2021-06-27 17:01 ` Felipe Contreras
  2021-06-28  7:35   ` Atharva Raykar
  2021-06-27 22:07 ` Christian Couder
       [not found] ` <CACdWUYWOsU+oHDNnur_NCSBuMfea95rKqrS5z2x-JRc_C0iyfg@mail.gmail.com>
  2 siblings, 1 reply; 6+ messages in thread
From: Felipe Contreras @ 2021-06-27 17:01 UTC (permalink / raw)
  To: Atharva Raykar, Git List
  Cc: Christian Couder, Shourya Shukla, Kaartic Sivaraam

Atharva Raykar wrote:

>   * Reflections:
>     - How does Git even start?
>       (https://atharvaraykar.me/gitnotes/week6#how-does-git-even-start)
>       This was just something I was curious about, not really important
>       to my project. If anyone knows the answer to what I asked in that,
>       section, it would be nice to know!

They are not all linked together.

Take for example shell.c, which will be used to generate shell.o, which
is used here:

  PROGRAM_OBJS += shell.o

PROGRAM_OBJS is used here:

  PROGRAMS += $(patsubst %.o,git-%$X,$(PROGRAM_OBJS))

This means shell.o will be used to generate a program called git-shell.

But the "git" program will not use PROGRAM_OBJS, therefore it will not
link shell.o.

Cheers.

-- 
Felipe Contreras

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [GSoC] My Git Dev Blog — Week 6
  2021-06-27 11:24 [GSoC] My Git Dev Blog — Week 6 Atharva Raykar
  2021-06-27 17:01 ` Felipe Contreras
@ 2021-06-27 22:07 ` Christian Couder
  2021-06-28  7:48   ` Atharva Raykar
       [not found] ` <CACdWUYWOsU+oHDNnur_NCSBuMfea95rKqrS5z2x-JRc_C0iyfg@mail.gmail.com>
  2 siblings, 1 reply; 6+ messages in thread
From: Christian Couder @ 2021-06-27 22:07 UTC (permalink / raw)
  To: Atharva Raykar; +Cc: Git List, Shourya Shukla, Kaartic Sivaraam

On Sun, Jun 27, 2021 at 1:24 PM Atharva Raykar <raykar.ath@gmail.com> wrote:
>
> Here's the latest instalment of my weekly Git blog:

s/instalment/installment/

> https://atharvaraykar.me/gitnotes/week6

Great, thanks!

Small nit: s/has not not yet/has not yet/

About "This kind of an invocation was done before in the context of
submodules, but it does not look reusable to me because it seems to
have side effects, that meddle with the repository’s object store."
couldn't a commit walk do the job (see
Documentation/MyFirstObjectWalk.txt)?

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [GSoC] My Git Dev Blog — Week 6
  2021-06-27 17:01 ` Felipe Contreras
@ 2021-06-28  7:35   ` Atharva Raykar
  0 siblings, 0 replies; 6+ messages in thread
From: Atharva Raykar @ 2021-06-28  7:35 UTC (permalink / raw)
  To: Felipe Contreras
  Cc: Git List, Christian Couder, Shourya Shukla, Kaartic Sivaraam

On 27-Jun-2021, at 22:31, Felipe Contreras <felipe.contreras@gmail.com> wrote:
> 
> Atharva Raykar wrote:
> 
>>  * Reflections:
>>    - How does Git even start?
>>      (https://atharvaraykar.me/gitnotes/week6#how-does-git-even-start)
>>      This was just something I was curious about, not really important
>>      to my project. If anyone knows the answer to what I asked in that,
>>      section, it would be nice to know!
> 
> They are not all linked together.
> 
> Take for example shell.c, which will be used to generate shell.o, which
> is used here:
> 
>  PROGRAM_OBJS += shell.o
> 
> PROGRAM_OBJS is used here:
> 
>  PROGRAMS += $(patsubst %.o,git-%$X,$(PROGRAM_OBJS))
> 
> This means shell.o will be used to generate a program called git-shell.
> 
> But the "git" program will not use PROGRAM_OBJS, therefore it will not
> link shell.o.

Thanks, that explained a lot of things for me, and I noticed
'git.c:cmd_main()' does indeed call these separately created
executables (like git-shell).

I'll try to update my blog post with this explanation when I get
some free time for it.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [GSoC] My Git Dev Blog — Week 6
  2021-06-27 22:07 ` Christian Couder
@ 2021-06-28  7:48   ` Atharva Raykar
  0 siblings, 0 replies; 6+ messages in thread
From: Atharva Raykar @ 2021-06-28  7:48 UTC (permalink / raw)
  To: Christian Couder; +Cc: Git List, Shourya Shukla, Kaartic Sivaraam

On 28-Jun-2021, at 03:37, Christian Couder <christian.couder@gmail.com> wrote:
> 
> On Sun, Jun 27, 2021 at 1:24 PM Atharva Raykar <raykar.ath@gmail.com> wrote:
>> 
>> Here's the latest instalment of my weekly Git blog:
> 
> s/instalment/installment/

Instalment is the commonwealth spelling:
https://wikidiff.com/instalment/installment

>> https://atharvaraykar.me/gitnotes/week6
> 
> Great, thanks!
> 
> Small nit: s/has not not yet/has not yet/

Thanks, I'll update it.

> About "This kind of an invocation was done before in the context of
> submodules, but it does not look reusable to me because it seems to
> have side effects, that meddle with the repository’s object store."
> couldn't a commit walk do the job (see
> Documentation/MyFirstObjectWalk.txt)?

I did have a look at it (not very thorough, though), and I immediately
felt that it was too low-level to be a drop-in replacement for
'is_tip_reachable'. I'll have a more thorough look at it though, and
see if I can make that work out nicely.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [GSoC] My Git Dev Blog — Week 6
       [not found] ` <CACdWUYWOsU+oHDNnur_NCSBuMfea95rKqrS5z2x-JRc_C0iyfg@mail.gmail.com>
@ 2021-06-28 17:01   ` Atharva Raykar
  0 siblings, 0 replies; 6+ messages in thread
From: Atharva Raykar @ 2021-06-28 17:01 UTC (permalink / raw)
  To: Shourya Shukla; +Cc: Git List, Christian Couder, Kaartic Sivaraam


On 28-Jun-2021, at 22:03, Shourya Shukla <periperidip@gmail.com> wrote:
> 
>> Le dim. 27 juin 2021 à 16:54, Atharva Raykar <raykar.ath@gmail.com> a écrit :
>> Here's the latest instalment of my weekly Git blog:
>> https://atharvaraykar.me/gitnotes/week6
>> 
>> A peek:
>> 
>>   * Project progress and current strategy.
>>     (mostly relevant to mentors)
>> 
>>   * Reflections:
>>     - How does Git even start?
>>       (https://atharvaraykar.me/gitnotes/week6#how-does-git-even-start)
>>       This was just something I was curious about, not really important
>>       to my project. If anyone knows the answer to what I asked in that,
>>       section, it would be nice to know!
> 
> This was a nice read! I always used to wonder how exactly Git starts.
> One thing you can do is that link the file/line you talk about. Takes 5-10
> minutes extra but is totally worth it in my opinion especially from the
> reader's standpoint.

Yeah, makes sense. I'll add the links.

> Do keep in mind that if you choose to link a file/line, link it from a
> specific tag (in this case a Git version) instead of the usual 'master'
> link. There is a reason for this which I leave it to you to find out ;)
> If you are not able to figure it out, feel free to PM us or ask on the list.

Right, that makes sense now that you mention it. I did not consider
the fact I have been linking a moving target the whole time.

Heh, I gotta fix all those other blog links now.

> Do give Makefiles a read in case you are not well-versed on them. It
> might make the 'Git startup' process a bit easier to understand.

Yeah, I did try reading the makefiles at first, but I found it easy to
get lost when I didn't know what to look for at first. I did eventually
understand how the startup works now :)

Reading that Makefile in the past helped me with other undocumented (to my
knowledge) things as well, like support for compile-time instrumentation
with LLVM's ASAN (I plan to write a short blog post about that outside of
my weekly reports someday).


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2021-06-28 17:02 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-27 11:24 [GSoC] My Git Dev Blog — Week 6 Atharva Raykar
2021-06-27 17:01 ` Felipe Contreras
2021-06-28  7:35   ` Atharva Raykar
2021-06-27 22:07 ` Christian Couder
2021-06-28  7:48   ` Atharva Raykar
     [not found] ` <CACdWUYWOsU+oHDNnur_NCSBuMfea95rKqrS5z2x-JRc_C0iyfg@mail.gmail.com>
2021-06-28 17:01   ` Atharva Raykar

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.