forked from mirrors/jj
ce0821f06d
The original idea was to completely replace git_refs with remotes["git"] by introducing "forgotten" state, but it turned out to break "fetch && undo" scenario. There are other ways around, but they also have problems: * Sets tombstone on forgotten/deleted remote refs, exports remote refs without comparing to the known refs. * `jj undo` would need to insert tombstone by diffing old/new views. * `jj branch forget` would need to preserve the @git branch whereas the other remote branches would be forgotten. * Always overwrites remote refs on export. * `jj git export` without importing would discard remote refs. So, I decided to not remove git_refs. Apparently, it also improves the undo behavior. In the new model, `jj git fetch && jj undo && jj git fetch` works even if git_refs isn't rolled back. So we can unify the default of `jj undo --what`. |
||
---|---|---|
.. | ||
git-submodule-storage.md | ||
git-submodules.md | ||
run.md | ||
tracking-branches.md |