* Untitled repository picker for background sessions
* Updates
* updates
* Include just what we need
* Fodler picker with verification of trust
* Fix tests
---------
Co-authored-by: Ladislau Szomoru <3372902+lszomoru@users.noreply.github.com>
* Initial commit
* More cleanup
* Try to fix the tests
* Fixes
* default selected repo if there's only one
---------
Co-authored-by: Don Jayamanne <don.jayamanne@outlook.com>
* WIP - add code to commit changes
* WIP - saving my work
* Refactored the code to use the same memento
* Use vscode.Uri instead of string for worktree path
* Adopt the new diffWithStats git extension API
* Fix unit tests
* Got the Apply action working
* Pull request feedback
* Pull request feedback
* More logging to help debug any issues with committing changes
* init
* Re-work code search implementation
Prepping for future work by making it easier to have individual repos in a workspace handle code search their own way. The previous implementation had gotten kind of unwieldy after we bolted on the ADO support. Extending it further would have made this even worse
* Copilot CLI - publish statistics for session using git worktree
* Refactor things to stage changes
* Fix test
* Pull request feedback
* Fix test
* Another attempt to fix tests
* initial code changes, tested manually in multiple scenarios
* added readable string for status value
* tests fixed up
* handle untracked new files
* fix existing tests
* new unit test for untracked files
* fix comment
---------
Co-authored-by: Ian Huff <ianhuff@Ians-MacBook-Pro-2.local>
* Support for opening session on different workspace
* Example of how to use the new git API
* Fixes
* Fixes
* Missing decode
---------
Co-authored-by: Alex Ross <38270282+alexr00@users.noreply.github.com>
* fetch basic repo info
* first whack at a basic fetching of full workspace diff from head
* Change to using git diff serviced and revert changes to git service, only start task for internal users
* tweak to diffing vs upstream head, not local head
* add location in
* tweak types and how location / id are added
* debug logging to be removed later
* add multiplex for properties
* couple smaller comment tweaks
* save state before bigger architectural change
* refactor for new location + new file done, basic manual test worked ok
* small change
* first pass at file watcher
* tweak to type and check to see if the diff is too large
* capture the full change object
* unit tests fixed up
* unit tests added, mostly via Claude, reviewing next
* one more check needed for file changed
* remove logging
* add a couple comments to repoInfoTelemetry
* add comment
* put back in blank lines per copilot comment
* tweak begin event location
* couple of quick PR changes
* initial size changes
* remove helper function and update test
* fix telemetry end of file
* send noChanges when repo same as upstream
* PR tweaks
* changes to not send end telemetry if begin fails
* ADO support
* tests updated
* update product code for adding repo file count and changed file count
* tests added and updated
* couple small comment changes
* quick change for testing
* typo update and test update
* DELETE to MODIFIED to make a test more clear
* added clarifying comment to test
---------
Co-authored-by: Ian Huff <ianhuff@Ians-MacBook-Pro-2.local>
Co-authored-by: Ian Huff <ianhuff@Mac.home>
* Git - wire up the codelens and command for merge conflict resolution
* Refactor code so that we are not using a codelens
* Rename folder
* Cleanup a change that is not needed
* Reorder imports
* Some code cleanup
* Update src/extension/git/vscode/mergeConflictParser.ts
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Fix compilation error
* Attempt to fix tests
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
For https://github.com/microsoft/vscode/issues/254952
- Run `isIgnored` check in parallel
- Skip `repoToRepoContext`. This creates an `RepoContextImpl` object which is expensive since it has observable properties that are all eagerly created
- Add cancellation checks in a few places
- Skip creating an observable in `waitForRepositoryState` if we already have a state