microsoft / microsoft/VFSForGit
Consider lifting gitattributes requirement for Unix
Nobody has claimed this yet.
- Dominant language
- C#
- Stars
- 6.1k
- Forks
- 474
- Avg merge
- 2d 4h
- Merged PRs (30d)
- 8
Description
Currently, every repository that uses VFS for Git needs to contain a .gitattributes file that contains * -text. Any revision that does not have this .gitattributes file cannot be checked out when using VFS for Git. This is important for Windows users, who often have CRLF handling enabled but cannot use it here.
However, overwhelmingly Unix (Mac and Linux) users don't have CRLF endings or working tree encodings on, because line endings are always LF and UTF-8 is ubiquitous. Unix-only users still have to either rewrite the entire repository or accept that they cannot check out older versions from before when the .gitattributes is updated, which is burdensome.
I'm wondering if it might be possible to perhaps lift this restriction altogether for Unix systems, provide a --force option to override it, or provide smarter handling (e.g., rejecting only for eol=crlf and working-tree-encoding) there so that users who are Unix-only have an easier time getting set up.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by locating the VFS for Git handling that requires a repository .gitattributes file containing * -text, then trace how Unix systems, --force, eol=crlf, and working-tree-encoding are considered. Done requires an agreed behavior for Unix-only users and coverage showing that affected revisions can be checked out without breaking Windows handling.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp, git
- Domain
- operating-systems, tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100