You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When updating from a commit where some files are ignored to a commit where they are not ignored (typically an older version), the ignored files will be picked up by subsequent snapshotting. That's rarely what one wants, and it's especially problematic if the ignored files are many (e.g. target/ in Rust projects).
Steps to Reproduce the Problem
cd$(mktemp -d)
jj git init
jj new
echo ignored > .gitignore
touch ignored
jj edit @-
jj status
Actual Behavior
The ignored file is tracked.
Expected Behavior
The ignored file does not get tracked. Perhaps jj status reports that it's in some kind of intermediate state.
We could implement it by having the WorkingCopy keep track of this type of file. Files would enter this state when updating the working copy and the ignored paths change. They would exit it when they're either either deleted or properly ignored again.
Files would enter this state when updating the working copy and the ignored paths change. They would exit it when they're either either deleted or properly ignored again.
fwiw, git submodule directories are processed in a similar manner. They're marked as submodule (= ignored) internally.
Ah, that's the issue I was looking for! I spend at least 5 minutes searching for it (e.g. "tracked ignored" doesn't work). I guess I'll mark that one as duplicate instead so it will be easier to find the issue (i.e. this one) next time.
Description
When updating from a commit where some files are ignored to a commit where they are not ignored (typically an older version), the ignored files will be picked up by subsequent snapshotting. That's rarely what one wants, and it's especially problematic if the ignored files are many (e.g.
target/
in Rust projects).Steps to Reproduce the Problem
Actual Behavior
The
ignored
file is tracked.Expected Behavior
The
ignored
file does not get tracked. Perhapsjj status
reports that it's in some kind of intermediate state.We could implement it by having the
WorkingCopy
keep track of this type of file. Files would enter this state when updating the working copy and the ignored paths change. They would exit it when they're either either deleted or properly ignored again.This idea was originally suggested by @ony.
Specifications
The text was updated successfully, but these errors were encountered: