git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Scott Richmond <scott@brightrockgames.com>
To: git@vger.kernel.org
Subject: Ability to ignore EOL changes for certain projects
Date: Wed, 18 Dec 2019 11:10:27 +0000	[thread overview]
Message-ID: <CAB1T5w2GyfERoaCyFZeKaui_xuXd0r6J+Zvq4pecstBJ9UyRzw@mail.gmail.com> (raw)

The Problem Domain
In certain dev environments (Unity3D projects) there is (AFAIK) an
unsolvable problem where some files are often modified with line
endings that aren't the native system or not the committed line
endings for that file. Secondarily, in this case line endings don't
matter - Nothing in the dev environment "cares" which kind of line
ending is used.

The Problem
Git always cares about EOL. Git has options to transparently modify
EOLs when files are checked in or out. However it is not possible to
tell Git to ignore EOLs in other commands:
Git status shows the file modified.
Merging/Pulling has to care because it can't merge with a modified
working tree. Which means the user has to care - They have to either
stash the EOL changes or wipe them out. Sometimes, if the user has a
particular app running, it may automatically reload that file and
recreate the modified EOL changes, causing an endless loop. This
problem is often made unclear to the user how to solve, especially if
they aren't domain experts.

To be clear, in this particular dev environment, I can say with
confidence that this particular issue is a major and common pain point
for users. It is made worse as many users in this environment aren't
programmers by trade and aren't domain experts in version control. I
also believe this environment is becoming a non-trivial portion of the
Git userbase and it would be worthwhile looking into resolving.

Solution Request
It would be fantastic if we could tell Git to stop caring about EOL
changes on a per-repo basis, with the effective output being that git
status shouldn't show changes for files with differing EOLs.

I'm experienced with Git, though I am not expert enough to consider
creating such a change myself - It is unclear to me just how
complicated a change may be. However maybe I could look into it if it
was made clear that this improvement is possible and has no serious
side effects.

Regards,

Scott Richmond.
  Director, Producer, Programmer
  Brightrock Games
  T: 07480795661

             reply	other threads:[~2019-12-18 11:10 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-12-18 11:10 Scott Richmond [this message]
2019-12-18 19:27 ` Ability to ignore EOL changes for certain projects Torsten Bögershausen
2019-12-18 21:33   ` Scott Richmond
2019-12-18 22:34     ` Philip Oakley
2019-12-19 13:39       ` Scott Richmond
2019-12-19  3:12     ` Torsten Bögershausen
2019-12-19 13:25       ` Scott Richmond
2019-12-20  3:02 ` brian m. carlson
2019-12-20 10:58   ` Scott Richmond

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: http://vger.kernel.org/majordomo-info.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAB1T5w2GyfERoaCyFZeKaui_xuXd0r6J+Zvq4pecstBJ9UyRzw@mail.gmail.com \
    --to=scott@brightrockgames.com \
    --cc=git@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).