Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FR: Support .ignore/.jjignore, a Git Independent way to ignore files. #3525

Open
PhilipMetzger opened this issue Apr 17, 2024 · 5 comments
Open
Labels
enhancement New feature or request

Comments

@PhilipMetzger
Copy link
Collaborator

PhilipMetzger commented Apr 17, 2024

Is your feature request related to a problem? Please describe.

At some point we won't have Git as a base system anymore, which means we'll some way to migrate to a new .ignore file. It either could be a custom .jjignore or .ignore if it doesn't conflict with other tools you're using.

Describe the solution you'd like
Add support for a .jjignore/.ignore file which can be adjacent to the .gitignore and a way to migrate the .gitignore to it (should be hopefully just a name change).

Describe alternatives you've considered
Support .gitignore forever, which also could work, but I'd really like Git to be gone.

@PhilipMetzger PhilipMetzger added the enhancement New feature or request label Apr 17, 2024
@joyously
Copy link

While adjacent, the jj one would have .git in it while the git one would have .jj in it.

FYI, I tried (but was unsuccessful) to get Pijul's file to change from .ignore to something specific to Pijul.
I think all of the meta info for a tool should be able to be addressed with a glob.

A plain .ignore is not as future proof.

@thoughtpolice
Copy link
Collaborator

thoughtpolice commented Apr 17, 2024

While adjacent, the jj one would have .git in it while the git one would have .jj in it.

Note that you don't need to add .jj to a .gitignore today because when jj automatically adds .jj/* to the special .git/info/exclude file.

@ilyagr
Copy link
Collaborator

ilyagr commented Apr 17, 2024

Note that you don't need to add .jj to a .gitignore today...

+1

...because when jj automatically adds .jj/* to the special .git/info/exclude file.

This actually changed slightly. jj now creates a .jj/.gitignore instead.

@necauqua
Copy link
Collaborator

A plain .ignore is not as future proof.

I kind of.. did not understand your message here. Why?

I've mentioned previously that creator of the ignore crate (and ripgrep) is pushing for a unified .ignore (which is just a .gitignore that's not specific to git) file that's recognized by various tools and I like the idea a lot. So I'd be in favor of .ignore file compliant with that instead of making yet another .somethingignore file.

@joyously
Copy link

I've mentioned previously that creator of the ignore crate (and ripgrep) is pushing for a unified .ignore

I haven't seen that remark. I suppose it doesn't matter that all the VCSs would be listed in one file. That's what would be intended anyway. I haven't thought about it as much as the crate author, but when I wrote that about future proofing, I was thinking in terms of a future maintainer that doesn't really know the old tool so wouldn't know that generic .ignore goes with it, and also mixing ignore files from VCS and some other kind of tool like backups or encryption or something else not written yet.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

5 participants