On 2023-08-25, Rainer Weikusat <rweikusat@talktalk.net> wrote:
If the files generated from these are also in the repository,
nuisance git dances will have to be performed to deal with them and this
will also cause nuisance merge conflicts for updates.
If you merge parallel changes to a primary file from which a secondary
file is generated, you must regenerate the secondary file. The seconary
file should not be merged. (That would be editing, and generated files
are "generated, do not edit", right?)
Kaz Kylheku <864-117-4973@kylheku.com> writes:
On 2023-08-25, Rainer Weikusat <rweikusat@talktalk.net> wrote:
[configure & friends in git]
If the files generated from these are also in the repository,
nuisance git dances will have to be performed to deal with them and this >>> will also cause nuisance merge conflicts for updates.
If you merge parallel changes to a primary file from which a secondary
file is generated, you must regenerate the secondary file. The seconary
file should not be merged. (That would be editing, and generated files
are "generated, do not edit", right?)
Precisely. But git will try to merge them nevertheless and the resulting merge conflicts need to be dealt with somehow. A good way to do so is
Never check anything into git which is supposed to generated from
something else also checked into git. In case someone else did this,
remove it.
On 2023-08-29, Rainer Weikusat <rweikusat@talktalk.net> wrote:
Kaz Kylheku <864-117-4973@kylheku.com> writes:
On 2023-08-25, Rainer Weikusat <rweikusat@talktalk.net> wrote:
[configure & friends in git]
Never check anything into git which is supposed to generated from
something else also checked into git. In case someone else did this,
remove it.
By and large, and by default, we should follow the configuration
management principle that secondary/derived objects are not put into
version control, only primary ones. This principle agrees with what you
are saying. When not sure, don't check in the derived object.
There are exceptions though.
If you check out a baseline from ten years ago, you get the
correct ten-year-old configure script or y.tab.c, which
were generated with the version of the generators used at the
time.
Kaz Kylheku <864-117-4973@kylheku.com> writes:
On 2023-08-29, Rainer Weikusat <rweikusat@talktalk.net> wrote:
Kaz Kylheku <864-117-4973@kylheku.com> writes:
On 2023-08-25, Rainer Weikusat <rweikusat@talktalk.net> wrote:
[configure & friends in git]
[...]
Never check anything into git which is supposed to generated from
something else also checked into git. In case someone else did this,
remove it.
By and large, and by default, we should follow the configuration
management principle that secondary/derived objects are not put into
version control, only primary ones. This principle agrees with what you
are saying. When not sure, don't check in the derived object.
There are exceptions though.
[easily building old releases]
If you check out a baseline from ten years ago, you get the
correct ten-year-old configure script or y.tab.c, which
were generated with the version of the generators used at the
time.
Hmm ... in my opinion, the chances that a ten year old version of
anything non-trivial will compile, let alone work, on a current Linux
system are exceedingly slim and an old system will have the old tools >available.
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 299 |
Nodes: | 16 (2 / 14) |
Uptime: | 81:35:16 |
Calls: | 6,696 |
Calls today: | 1 |
Files: | 12,229 |
Messages: | 5,347,841 |