Re: .gitignore is not enough
- From
Johannes Sixt <j6t@kdbg.org>
- Date
- Aug 3, 2023, 20:27 UTC
- Message-ID
- <e453bee1-942f-ea9a-9c50-3cf5d0f9e936@kdbg.org>
- In-Reply-To
- <CAE1pOi1xtaEo6LtF4VnXetmLYK5VbYU5uq7gGC=PpnVB3MWdag@mail.gmail.com>
Am 03.08.23 um 19:49 schrieb Hilco Wijbenga:
Show 9 quoted lines
> The promise part, I was aware of. In that sense, my wording was too > strong. It's more like "just trust me". > > So the "you will get what you deserve" makes sense. If the > original/default/skeleton changes for some reason, your local changes > will just get overwritten. Nothing surprising there. > > But in what scenario would Git "commit them nevertheless"? That one is > a surprise to me and is a bit worrisome.
I don't know. In my book it is called "undefined behavior". Anything can happen, including things that I did not enumerate.
-- Hannes
Show 26 quoted lines
> > On Thu, Aug 3, 2023 at 10:17 AM Johannes Sixt <j6t@kdbg.org> wrote: >> >> Am 03.08.23 um 07:35 schrieb Hilco Wijbenga: >>> I think you might be looking for "git update-index --assume-unchanged >>> <file>"? See https://www.git-scm.com/docs/git-update-index for more >>> details. >> >> Sorry to tell you that this is a myth that lives on because it is >> repeated over and over again. >> >>> This allows you to tell Git to ignore the changes you made to that >>> (tracked) file. >> >> No. --assume-unchanged allows you to make the *promise* to Git that you >> will not change the file, and consequently Git does not have to check >> whether the file was changed. If you break the promise (because you >> change it), you will get what you deserve. For example, you may find >> that Git overwrites your changes, or commits them nevertheless. >> >> Perhaps a better choice is --skip-worktree, but recent answers on >> Stackoverflow point out that even that is not a suitable solution for >> "please, Git, ignore these changes". >> >> -- Hannes >>