Repository navigation
chore: ignore .vscode/ editor scaffolding - #22
Open
VAsHachiRoku wants to merge 1 commit into
Open
VAsHachiRoku wants to merge 1 commit into
VAsHachiRoku wants to merge 1 commit into
Conversation
VS Code's C# extension scaffolds .vscode/launch.json, and Developer Control Tower writes .vscode/tasks.json when it launches this repo. Neither is shared configuration: launch.json targets the test project rather than the desktop app, and the generated task carries per-user session flags. The app already keeps its own file out of git via .git/info/exclude, so this only covers the editor-generated remainder. Matches the existing .vs/ and .idea/ entries. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: fefa59c9-4c4d-459a-9100-8b86025dabd8
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Launching this repository from Developer Control Tower left
.vscode/showing as anuntracked directory, so the working tree was never clean after a launch.
Two different files were involved, with different origins:
.vscode/tasks.jsonis written by Developer Control Tower itself when it starts aCopilot CLI session for this folder. The tool already keeps this out of version
control by appending
/.vscode/tasks.jsonto.git/info/exclude, which isdeliberate so it never edits a tracked
.gitignorein someone else's repository..vscode/launch.jsonis scaffolded by the VS Code C# extension and was not coveredby anything. It was the only genuinely untracked file;
git status --shortcollapsesthe directory to
?? .vscode/, which made both look untracked.Neither file is shared configuration.
launch.jsonis a console-debug configurationpointed at
ControlTower.Testsrather than the WPF desktop app, and the generated taskcarries per-user session flags. This adds
.vscode/to.gitignorealongside theexisting
.vs/and.idea/entries, so editor and tool scaffolding is treated the sameway regardless of which editor produced it.
Behavior and risk
User-visible behavior
.gitignore.Scope
.vscode/before this change (git ls-files .vscodeisempty), so no file is being un-tracked and no contributor loses a committed config.
.git/info/excludemechanism is left untouched. It remains the correctbehavior for repositories the tool does not own; this change only covers the
editor-generated remainder in this repository.
.vscode/can still be added deliberately withgit add -f.Security impact
which records personal launch flags such as the agent name and session options.
.gitignorealready ignoresuser and machine state for this tool.
Rollback
.vscode/files on disk are untouched either way.Validation
dotnet test DeveloperControlTower.sln -c ReleaseNo tests were added and the suite was not run locally: this change touches no compiled
code, only
.gitignore. CI runs the full build and test suite on this pull request as arequired status check, which covers the no-regression case.
Validation performed was on the ignore behavior itself:
git check-ignore -v .vscode/launch.json.gitignore:4:.vscode/— now ignoredgit check-ignore -v .vscode/tasks.json.gitignore:4:.vscode/— now ignoredgit status --porcelain --untracked-files=allgit ls-files .vscodeNo workflow files were changed.