On Wed, Nov 19, 2025 at 04:22:37PM -0500, Tom Lane wrote:
> Bruce Momjian <[email protected]> writes:
> > On Wed, Nov 19, 2025 at 03:21:33PM -0500, Tom Lane wrote:
> >> Also ... are you in fact counting only what is in git?  Because
> >> I get different answers:
> 
> > No, I just followed the shell comment I wrote above the 'find' command
> > shown above:
> 
> >     # This script is used to compute the total number of "C" lines in the
> >     # release This should be run from the top of the Git tree after a 'make
> >     # distclean'
> 
> > And that tree has been built many times.  Should I change my procedure?
> 
> Does "git status --ignored" show any leftover junk files?
> 
> I've found that "make distclean" isn't 100% reliable if you aren't
> religious about doing it before every git pull or other change of
> git HEAD.  The pull might bring in new makefiles with a different
> idea of what needs to be cleaned.  For .c files I'd kind of expect
> leftovers to be obvious because they won't get hidden by .gitignore
> rules, but maybe you hit some case where they're still hidden.
> 
> I've largely migrated to using "git clean -dfxq", which has about
> the same results in modern branches, but is faster and never (IME)
> misses anything.

I think you are right.  Attached is the difference between the output
for 16 & 17.  Let me do some more research and run all the versions
again and report back, thanks.

-- 
  Bruce Momjian  <[email protected]>        https://momjian.us
  EDB                                      https://enterprisedb.com

  Do not let urgent matters crowd out time for investment in the future.
16
On branch REL_16_STABLE
Your branch is up to date with 'origin/REL_16_STABLE'.

Ignored files:
  (use "git add -f <file>..." to include in what will be committed)
        ID
        a
        b
        src/Makefile.custom
        src/backend/bootstrap/bootparse.c
        src/backend/bootstrap/bootparse.h
        src/backend/bootstrap/bootscanner.c
        src/backend/catalog/bki-stamp
        src/backend/catalog/pg_aggregate_d.h
        src/backend/catalog/pg_am_d.h
        src/backend/catalog/pg_amop_d.h
        src/backend/catalog/pg_amproc_d.h
        src/backend/catalog/pg_attrdef_d.h
        src/backend/catalog/pg_attribute_d.h
        src/backend/catalog/pg_auth_members_d.h
        src/backend/catalog/pg_authid_d.h
        src/backend/catalog/pg_cast_d.h
        src/backend/catalog/pg_class_d.h
        src/backend/catalog/pg_collation_d.h
        src/backend/catalog/pg_constraint_d.h
        src/backend/catalog/pg_conversion_d.h
        src/backend/catalog/pg_database_d.h
        src/backend/catalog/pg_db_role_setting_d.h
        src/backend/catalog/pg_default_acl_d.h
        src/backend/catalog/pg_depend_d.h
        src/backend/catalog/pg_description_d.h
        src/backend/catalog/pg_enum_d.h
        src/backend/catalog/pg_event_trigger_d.h
        src/backend/catalog/pg_extension_d.h
        src/backend/catalog/pg_foreign_data_wrapper_d.h
        src/backend/catalog/pg_foreign_server_d.h
        src/backend/catalog/pg_foreign_table_d.h
        src/backend/catalog/pg_index_d.h
        src/backend/catalog/pg_inherits_d.h
        src/backend/catalog/pg_init_privs_d.h
        src/backend/catalog/pg_language_d.h
        src/backend/catalog/pg_largeobject_d.h
        src/backend/catalog/pg_largeobject_metadata_d.h
        src/backend/catalog/pg_namespace_d.h
        src/backend/catalog/pg_opclass_d.h
        src/backend/catalog/pg_operator_d.h
        src/backend/catalog/pg_opfamily_d.h
        src/backend/catalog/pg_parameter_acl_d.h
        src/backend/catalog/pg_partitioned_table_d.h
        src/backend/catalog/pg_policy_d.h
        src/backend/catalog/pg_proc_d.h
        src/backend/catalog/pg_publication_d.h
        src/backend/catalog/pg_publication_namespace_d.h
        src/backend/catalog/pg_publication_rel_d.h
        src/backend/catalog/pg_range_d.h
        src/backend/catalog/pg_replication_origin_d.h
        src/backend/catalog/pg_rewrite_d.h
        src/backend/catalog/pg_seclabel_d.h
        src/backend/catalog/pg_sequence_d.h
        src/backend/catalog/pg_shdepend_d.h
        src/backend/catalog/pg_shdescription_d.h
        src/backend/catalog/pg_shseclabel_d.h
        src/backend/catalog/pg_statistic_d.h
        src/backend/catalog/pg_statistic_ext_d.h
        src/backend/catalog/pg_statistic_ext_data_d.h
        src/backend/catalog/pg_subscription_d.h
        src/backend/catalog/pg_subscription_rel_d.h
        src/backend/catalog/pg_tablespace_d.h
        src/backend/catalog/pg_transform_d.h
        src/backend/catalog/pg_trigger_d.h
        src/backend/catalog/pg_ts_config_d.h
        src/backend/catalog/pg_ts_config_map_d.h
        src/backend/catalog/pg_ts_dict_d.h
        src/backend/catalog/pg_ts_parser_d.h
        src/backend/catalog/pg_ts_template_d.h
        src/backend/catalog/pg_type_d.h
        src/backend/catalog/pg_user_mapping_d.h
        src/backend/catalog/postgres.bki
        src/backend/catalog/schemapg.h
        src/backend/catalog/system_constraints.sql
        src/backend/catalog/system_fk_info.h
        src/backend/nodes/copyfuncs.funcs.c
        src/backend/nodes/copyfuncs.switch.c
        src/backend/nodes/equalfuncs.funcs.c
        src/backend/nodes/equalfuncs.switch.c
        src/backend/nodes/node-support-stamp
        src/backend/nodes/nodetags.h
        src/backend/nodes/outfuncs.funcs.c
        src/backend/nodes/outfuncs.switch.c
        src/backend/nodes/queryjumblefuncs.funcs.c
        src/backend/nodes/queryjumblefuncs.switch.c
        src/backend/nodes/readfuncs.funcs.c
        src/backend/nodes/readfuncs.switch.c
        src/backend/parser/gram.c
        src/backend/parser/gram.h
        src/backend/parser/scan.c
        src/backend/replication/repl_gram.c
        src/backend/replication/repl_gram.h
        src/backend/replication/repl_scanner.c
        src/backend/replication/syncrep_gram.c
        src/backend/replication/syncrep_gram.h
        src/backend/replication/syncrep_scanner.c
        src/backend/snowball/snowball_create.sql
        src/backend/storage/lmgr/lwlocknames.c
        src/backend/storage/lmgr/lwlocknames.h
        src/backend/utils/adt/jsonpath_gram.c
        src/backend/utils/adt/jsonpath_gram.h
        src/backend/utils/adt/jsonpath_scan.c
        src/backend/utils/errcodes.h
        src/backend/utils/fmgr-stamp
        src/backend/utils/fmgroids.h
        src/backend/utils/fmgrprotos.h
        src/backend/utils/fmgrtab.c
        src/backend/utils/misc/guc-file.c
        src/bin/pgbench/exprparse.c
        src/bin/pgbench/exprparse.h
        src/bin/pgbench/exprscan.c
        src/bin/psql/psqlscanslash.c
        src/bin/psql/sql_help.c
        src/bin/psql/sql_help.h
        src/common/kwlist_d.h
        src/fe_utils/psqlscan.c
        src/interfaces/ecpg/preproc/c_kwlist_d.h
        src/interfaces/ecpg/preproc/ecpg_kwlist_d.h
        src/interfaces/ecpg/preproc/pgc.c
        src/interfaces/ecpg/preproc/preproc.c
        src/interfaces/ecpg/preproc/preproc.h
        src/interfaces/ecpg/preproc/preproc.y
        src/pl/plpgsql/src/pl_gram.c
        src/pl/plpgsql/src/pl_gram.h
        src/pl/plpgsql/src/pl_reserved_kwlist_d.h
        src/pl/plpgsql/src/pl_unreserved_kwlist_d.h
        src/pl/plpgsql/src/plerrcodes.h
        src/port/strlcat.o
        src/port/strlcat_shlib.o
        src/port/strlcat_srv.o
        src/port/strlcpy.o
        src/port/strlcpy_shlib.o
        src/port/strlcpy_srv.o
        src/test/isolation/specparse.c
        src/test/isolation/specparse.h
        src/test/isolation/specscanner.c
        tags

nothing to commit, working tree clean
17
On branch REL_17_STABLE
Your branch is up to date with 'origin/REL_17_STABLE'.

Ignored files:
  (use "git add -f <file>..." to include in what will be committed)
        ID
        a
        b
        src/Makefile.custom
        src/port/strlcat.o
        src/port/strlcat_shlib.o
        src/port/strlcat_srv.o
        src/port/strlcpy.o
        src/port/strlcpy_shlib.o
        src/port/strlcpy_srv.o
        tags

Reply via email to