Using make_ctags leaves tags files in git

Started by Steve Chavezover 2 years ago7 messages
#1Steve Chavez
steve@supabase.io

Hello hackers,

I use postgres/src/tools/make_ctags and it works great. But it leaves the
tags files ready to be committed in git. So, I've added 'tags' to
.gitignore.

Best regards,
Steve

#2Michael Paquier
michael@paquier.xyz
In reply to: Steve Chavez (#1)
Re: Using make_ctags leaves tags files in git

On Sun, May 14, 2023 at 06:13:21PM -0300, Steve Chavez wrote:

I use postgres/src/tools/make_ctags and it works great. But it leaves the
tags files ready to be committed in git. So, I've added 'tags' to
.gitignore.

This has been proposed in the past, where no conclusion was reached
about whether this would be the best move (backup files from vim or
emacs are not ignored, either):
/messages/by-id/CAFcNs+rG-DASXzHcecYKvAj+rmxi8CpMAgbpGpEK-mjC96F=Lg@mail.gmail.com

And there are global rules, as well.
--
Michael

#3Steve Chavez
steve@supabase.io
In reply to: Michael Paquier (#2)
Re: Using make_ctags leaves tags files in git

Hello Michael,

On the previous patch:

- `.*.swp` was added, which I entirely agree shouldn't be in .gitignore as
it's editor specific(despite me using vim).
- The discussion dabbled too much around the *.swp addition.

In this case I just propose adding 'tags'. I believe it's reasonable to
ignore these as they're produced by make_ctags.

Best regards,
Steve

On Sun, 14 May 2023 at 20:44, Michael Paquier <michael@paquier.xyz> wrote:

Show quoted text

On Sun, May 14, 2023 at 06:13:21PM -0300, Steve Chavez wrote:

I use postgres/src/tools/make_ctags and it works great. But it leaves the
tags files ready to be committed in git. So, I've added 'tags' to
.gitignore.

This has been proposed in the past, where no conclusion was reached
about whether this would be the best move (backup files from vim or
emacs are not ignored, either):

/messages/by-id/CAFcNs+rG-DASXzHcecYKvAj+rmxi8CpMAgbpGpEK-mjC96F=Lg@mail.gmail.com

And there are global rules, as well.
--
Michael

#4Tom Lane
tgl@sss.pgh.pa.us
In reply to: Steve Chavez (#3)
Re: Using make_ctags leaves tags files in git

Steve Chavez <steve@supabase.io> writes:

In this case I just propose adding 'tags'. I believe it's reasonable to
ignore these as they're produced by make_ctags.

Our policy on this is that the project's .gitignore files should ignore
files that are produced by our standard build scripts. Anything else
you should put in your personal ignore patterns (one way is to set
the core.excludesFile property in ~/.gitconfig). Otherwise it's very
very hard to argue which tools are privileged to get a project-wide
ignore entry. Personally, for example, I use emacs but not ctags,
so I'd put "*~" way ahead of "tags". But it's my responsibility to
ignore "*~", and I do.

regards, tom lane

#5Alvaro Herrera
alvherre@alvh.no-ip.org
In reply to: Tom Lane (#4)
Re: Using make_ctags leaves tags files in git

On 2023-May-14, Tom Lane wrote:

Steve Chavez <steve@supabase.io> writes:

In this case I just propose adding 'tags'. I believe it's reasonable to
ignore these as they're produced by make_ctags.

Our policy on this is that the project's .gitignore files should ignore
files that are produced by our standard build scripts.

But make_ctags is *our* script, so I think this rule applies to them as
well. (In any case, what can be hurt? We're not going to add any files
to git named "tags" anyway.)

--
Álvaro Herrera Breisgau, Deutschland — https://www.EnterpriseDB.com/

#6Michael Paquier
michael@paquier.xyz
In reply to: Alvaro Herrera (#5)
Re: Using make_ctags leaves tags files in git

On Mon, May 15, 2023 at 12:33:17PM +0200, Alvaro Herrera wrote:

But make_ctags is *our* script, so I think this rule applies to them as
well. (In any case, what can be hurt? We're not going to add any files
to git named "tags" anyway.)

Yes, you have a point about the origin of the script generating the
tags. One thing is that one can still add a file even if listed in
what to ignore, as long as it is done with git-add -f. Okay, that's
not going to happen.

(FWIW, looking at my stuff, I have just set up that globally in 2018
after seeing the other thread.)
--
Michael

#7Daniel Gustafsson
daniel@yesql.se
In reply to: Alvaro Herrera (#5)
Re: Using make_ctags leaves tags files in git

On 15 May 2023, at 12:33, Alvaro Herrera <alvherre@alvh.no-ip.org> wrote:

On 2023-May-14, Tom Lane wrote:

Steve Chavez <steve@supabase.io> writes:

In this case I just propose adding 'tags'. I believe it's reasonable to
ignore these as they're produced by make_ctags.

Our policy on this is that the project's .gitignore files should ignore
files that are produced by our standard build scripts.

But make_ctags is *our* script, so I think this rule applies to them as
well.

It is our script, but "tags" is not an artifact created by the build scripts
since make_{c|e}tags isn't part of the build so I'm not convinced we should
bother. If we do I'm sure there are many other scripts in src/tools which
generate files we don't track (like make_mkid, which admittedly probably hasn't
been executed by anyone in a decade or so).

--
Daniel Gustafsson