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
Hi folks! I noticed a regression recently that's been making it pretty difficult for me to use jj on one of my larger projects so I figured I'd try and narrow it down and get a report together.
jj has always happily ignored my git submodules and let me manage them using git without much trouble, however there's been a change between version 0.22.0 (which works well) to 0.23.0 which causes issues.
In 0.23.0 jj seems to start tracking submodules if you have a commit which mentions them, then it causes all sorts of problems where jj thinks you've got changes in your submodules, but you can't actually commit or ignore them no matter what you do. I'm having trouble pinning down how I got into that state, but I was able to reproduce the following workflow:
Steps to Reproduce the Problem
The following steps fail on 0.23.0, but work fine on 0.22.0
cd unison && git checkout cp/batched-diffs (any branch other than trunk will do, we just need a change to commit)
5.cd .. && git add -A && git commit -m "commit submodule"
jj status
jj abandon -r @-
Abandoned commit rzpynzsp a56fbf3d update submodule
Rebased 1 descendant commits onto parents of abandoned commits
Internal error: Failed to check out commit cee899b78e7d4a477c866636ae250ea692c585e7
Caused by:
1: Failed to remove file /Users/cpenner/dev/share-api/unison
2: Operation not permitted (os error 1)
$ jj status
Error: The working copy is stale (not updated since operation 853877ccb943).
Hint: Run `jj workspace update-stale` to update it.
See https://martinvonz.github.io/jj/latest/working-copy/#stale-working-copy for more information.
Expected Behavior
jj version 0.22.0 demonstrates the correct behaviour, it simply ignores the submodule and doesn't error or track files within it.
Actual Behavior
jj version 0.23.0 sometimes fails to check out changes which alter submodules, and sometimes tracks changes within them if there are git commits which have updated the submodule.
Specifications
Platform: OSX
Version: 0.23.0
Thanks for all your work folks, love the tool!
The text was updated successfully, but these errors were encountered:
Description
Hi folks! I noticed a regression recently that's been making it pretty difficult for me to use
jj
on one of my larger projects so I figured I'd try and narrow it down and get a report together.jj
has always happily ignored my git submodules and let me manage them using git without much trouble, however there's been a change between version 0.22.0 (which works well) to 0.23.0 which causes issues.In
0.23.0
jj seems to start tracking submodules if you have a commit which mentions them, then it causes all sorts of problems where jj thinks you've got changes in your submodules, but you can't actually commit or ignore them no matter what you do. I'm having trouble pinning down how I got into that state, but I was able to reproduce the following workflow:Steps to Reproduce the Problem
The following steps fail on
0.23.0
, but work fine on0.22.0
git submodule update --init --recursive
jj git init --colocate
cd unison && git checkout cp/batched-diffs
(any branch other than trunk will do, we just need a change to commit)5.
cd .. && git add -A && git commit -m "commit submodule"
jj status
jj abandon -r @-
Expected Behavior
jj version 0.22.0 demonstrates the correct behaviour, it simply ignores the submodule and doesn't error or track files within it.
Actual Behavior
jj version 0.23.0 sometimes fails to check out changes which alter submodules, and sometimes tracks changes within them if there are git commits which have updated the submodule.
Specifications
Thanks for all your work folks, love the tool!
The text was updated successfully, but these errors were encountered: