Change:
There doesn't appear to be an option to hide the git sync icon that appears in the status bar. It's not really a big deal but it would be nice to hide the git sync icon. Personally, coming from Vim I prefer working with the VCS outside of the editor, yet I would still like to see the current branch that is being worked on. This is why I'd like to hide just the sync button and not hide both git status bar items or disable the git extension entirely.
(Experimental duplicate detection) Thanks for submitting this issue. Please also check if it is already covered by an existing one, like: <!-- score: 0.561 --<!-- potentialduplicatescomment --
I believe this is resolved via
No, hard to revert that change.
/duplicate
Thanks for creating this issue! We figured it's covering the same as another one we already have. Thus, we closed this one as a duplicate. You can search for existing issues . See also our guidelines. Happy Coding!

Discussion:
"default": true, "description": "%config.decorations.enabled%" }, <ins> "git.statusBarSync.enabled": { "type": "boolean", "default": true, "description": "%config.statusBarSync.enabled%" }, </ins> "git.promptToSaveFilesBeforeCommit": { "type": "boolean", "scope": "resource",

"config.enableCommitSigning": "Enables commit signing with GPG.", "config.discardAllScope": "Controls what changes are discarded by the `Discard all changes` command. `all` discards all changes. `tracked` discards only tracked files. `prompt` shows a prompt dialog every time the action is run.", "config.decorations.enabled": "Controls whether Git contributes colors and badges to the explorer and the open editors view.", <ins> "config.statusBarSync.enabled": "Controls whether Git sync appears in the status bar.", </ins> "config.promptToSaveFilesBeforeCommit": "Controls whether Git should check for unsaved files before committing.", "config.postCommitCommand": "Runs a git command after a successful commit.", "config.postCommitCommand.none": "Don't run any command after a commit.",

import { Disposable, Command, EventEmitter, Event, workspace, Uri } from 'vscode'; import { Repository, Operation } from './repository'; <del> import { anyEvent, dispose } from './util'; </del> <ins> import { anyEvent, dispose, filterEvent } from './util'; </ins> import * as nls from 'vscode-nls'; import { Branch } from './api/git';

} interface SyncStatusBarState { <ins> isEnabled: boolean; </ins> isSyncRunning: boolean; hasRemotes: boolean; HEAD: Branch | undefined;

class SyncStatusBar { private static StartState: SyncStatusBarState = { <ins> isEnabled: true, </ins> isSyncRunning: false, hasRemotes: false, HEAD: undefined

constructor(private repository: Repository) { repository.onDidRunGitStatus(this.onModelChange, this, this.disposables); repository.onDidChangeOperations(this.onOperationsChange, this, this.disposables); <ins> const onEnablementChange = filterEvent(workspace.onDidChangeConfiguration, e => e.affectsConfiguration('git.statusBarSync.enabled')); onEnablementChange(this.updateEnablement, this, this.disposables); </ins> this._onDidChange.fire(); } <ins> private updateEnablement(): void { const isEnabled = workspace.getConfiguration('git').get('statusBarSync.enabled'); if (isEnabled) { this.state = { ... this.state, isEnabled: true }; } else { this.state = { ... this.state, isEnabled: false }; } } </ins> private onOperationsChange(): void { const isSyncRunning = this.repository.operations.isRunning(Operation.Sync) || this.repository.operations.isRunning(Operation.Push) ||

} get command(): Command | undefined { <del> if (!this.state.hasRemotes) { </del> <ins> if (!this.state.isEnabled || !this.state.hasRemotes) { </ins> return undefined; }