に参加して、VS Code の AI 支援開発について学びましょう。

ソース管理に関する FAQ

このトピックでは、Visual Studio Code で Git ソース管理と GitHub を使用する際によくある質問に答えます。

Git

Git コミットを元に戻すには?

Git: Undo Last Commit コマンドで、最後のコミットを元に戻します。これにより、すべての変更を含め、コミットを行う直前の状態にブランチがリセットされます。このコマンドは、ソース管理ビュー上部の Commit の下にある More Actions ... 内のメニューとしても利用できます。

ローカルブランチの名前を変更するには?

Git: Rename Branch… コマンドは、新しい名前を要求します。

コミットする前に git add を元に戻すには?

Staged Changes にリストされている追加ファイルは、- アイコンまたはドラッグアンドドロップでステージから削除できます。

最新のコミットメッセージを編集するには?

最後のローカルコミットのコミットメッセージを更新するには、Git: Commit Staged (Amend) コマンドを使用します。これにより、最後のメッセージを編集して保存するためのエディターが開きます。他の変更がステージングされていないことを確認してください。ステージングされている場合、それらの変更もコミットに含まれてしまいます。

リポジトリを初期化しましたが、... メニューのアクションがすべてグレー表示されています。

プッシュ、プル、同期を行うには、Git オリジンが設定されている必要があります。必要な URL はリポジトリホストから取得できます。その URL を取得したら、いくつかのコマンドラインアクションを実行して、Git 設定に追加する必要があります。例:

> git remote add origin https://github.com/<repo owner>/<repo name>.git
> git push -u origin main

私のチームは Git の代わりに Team Foundation Version Control (TFVC) を使用しています。どうすればよいですか?

Azure Repos 拡張機能を使用すると、TFVC のサポートが有効になります。

プル、プッシュ、同期のアクションが完了しないのはなぜですか?

これは通常、Git で認証情報管理が構成されておらず、何らかの理由で認証情報のプロンプトが表示されないことを意味します。

VS Code が毎回認証情報を要求することなく、リモートサーバーからプルおよびプッシュするために、認証ヘルパーをいつでも設定できます。

多要素認証が必要な Azure DevOps 組織で Git にサインインするにはどうすればよいですか?

Git Credential Manager (GCM) は、Windows、macOS、Linux 用に推奨される Git 認証ヘルパーです。Git for Windows を実行している場合、GCM はすでにインストールおよび構成されています。macOS または Linux を実行している場合、GCM の README にセットアップ手順があります。

コンピューターに GitHub Desktop がインストールされていますが、VS Code はそれを無視します。

VS Code は、Git 統合のために公式の Git ディストリビューションのみをサポートしています。

VS Code の実行中に常に Git 認証ダイアログが表示されます。

VS Code は、受信変更の概要を表示するために、サーバーから変更を自動的にフェッチします。Git 認証ダイアログは VS Code 自体とは独立しており、現在の Git 認証ヘルパーの一部です。

これらのプロンプトを回避する1つの方法は、認証情報を記憶する認証ヘルパーを設定することです。

もう1つのオプションは、次の設定を変更して自動フェッチ機能を無効にすることです: "git.autofetch": false

VS Code が git リポジトリが潜在的に安全でないと警告するのはなぜですか?

VS Code は、すべての Git 操作を実行するために git.exe を使用します。Git 2.35.2 以降、リポジトリが現在のユーザー以外のユーザーが所有するフォルダーにある場合、ユーザーはリポジトリ内の Git 操作を実行できません。これは、リポジトリが潜在的に安全でないと見なされるためです。

そのようなリポジトリを開こうとすると、VS Code はソース管理ビューにウェルカムビューを表示するか、エラー通知を表示します。ウェルカムビューと通知の両方に Manage Unsafe Repositories コマンドが含まれており、潜在的に安全でないリポジトリのリストを確認し、それらを安全としてマークして開くことができます。Manage Unsafe Repositories コマンドは、コマンドパレット (⇧⌘P (Windows, Linux Ctrl+Shift+P)) でも利用できます。リポジトリを安全としてマークすると、リポジトリの場所が safe.directory git 設定に追加されます。

Windows では、これが発生する一般的なシナリオは、アプリケーション (例: Windows Terminal または VS Code) を「管理者として」実行してリポジトリをクローンしたが、別のアプリケーションまたはインスタンス (例: VS Code) を「管理者として」実行せずにリポジトリを開いた場合です。

VS Code がワークスペースまたは開いているファイルの親フォルダーにある Git リポジトリを検出しないのはなぜですか?

VS Code は、Git リポジトリのルートを決定するために git rev-parse --show-toplevel を使用します。ほとんどの場合、Git リポジトリのルートはワークスペース内にありますが、Git リポジトリのルートがワークスペースまたは開いているファイルの親フォルダーにあるシナリオもあります。ワークスペースまたは開いているファイルの親フォルダーにある Git リポジトリを開くことは、上級ユーザーにとっては素晴らしい機能ですが、新規ユーザーにとっては混乱を招く可能性があります。この混乱が原因で、これらの Git リポジトリからの変更が破棄され、データ損失が発生したケースが確認されています。

混乱を避け、データ損失のリスクを減らすために、VS Code はソース管理ビューに通知と新しいウェルカムビューを表示し、ワークスペースや開いているファイルの親フォルダーから Git リポジトリを自動的に開くことはありません。

親フォルダーからの Git リポジトリの処理方法は、git.openRepositoryInParentFolders 設定を使用して制御できます。以前の動作に戻したい場合は、git.openRepositoryInParentFolders 設定を always に設定してください。

VS Code で SSH Git 認証を使用できますか?

はい、ただし VS Code はパスフレーズなしの SSH キーで最も簡単に動作します。パスフレーズ付きの SSH キーを使用している場合は、Git Bash プロンプトから VS Code を起動して、その SSH 環境を継承する必要があります。

GitHub

GitHub Enterprise はサポートされていますか?

VS Code は、GitHub Enterprise Servers での認証を公式にサポートしています。GHES リポジトリのローカルチェックアウトを開くと、GitHub Enterprise Server アカウントでサインインするよう求められます。

© . This site is unofficial and not affiliated with Microsoft.