質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Git

Gitはオープンソースの分散バージョン管理システム(DVCS)です。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

3回答

2763閲覧

Git管理下でのVSCodeのlaunch.jsonの扱い方について教えてください。

coh46

総合スコア9

Git

Gitはオープンソースの分散バージョン管理システム(DVCS)です。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2019/10/13 08:49

編集2019/10/13 09:38

PHPを用いたプロジェクトで、Xdebugを使ってVSCodeでデバッグすることが多いのですが、毎回以下のことを繰り返しています。

1.毎回プロジェクトごとに構成を作成、プロジェクトフォルダ直下に.vscodeフォルダとlaunch.jsonが生成される
2.Gitのリモートリポジトリにpushするときに、launch.jsonがVSCodeのソース管理の一覧に表示されてしまうため、その度に削除してpush
3.デバッグする際に、再度構成を作成、launch.jsonが生成される

pushの度に毎回launch.jsonの生成削除を繰り返すのが、非常に面倒くさいです(間違って一緒にpushしてしまうこともしばしば)。

この状況を改善するために.gitignoreに記述すれば一覧に表示されなくなるのではないかと思い、以下を記述してみました

.vscode/*
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json

しかし、反映されず、相変わらず変更一覧に表示されてしまいます。

また、その時思ったのですが、
仮にlaunch.jsonが一覧から消えたとしても、.gitignoreが一覧に表示されてしまうので、
勝手に.gitignoreを編集したとして、他のメンバーに迷惑なのではないか、という不安があります。
(.gitignoreは.envのようにGitに反映されないのかと思っていました。)

そこで、以下の点をお聞きしたいです。

1.どうすれば.gitignoreに書いた内容が反映されるのか
2.gitignore自体はgitに反映されるのか、反映してよいのか
3.そもそも毎回launch.jsonを作る必要があるのか(最初に一度作れば済む方法はないのか、みなさんはどのように対処しているのか)

よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

ベストアンサー

plain

1.vscode/* 2!.vscode/settings.json 3!.vscode/tasks.json 4!.vscode/launch.json 5!.vscode/extensions.json

これってlaunch.jsonをgit管理する設定ですよね。
https://github.com/github/gitignore/blob/21419e391a78f2487340b3b1240b988aaf15b54f/Global/VisualStudioCode.gitignore
にも乗っかるくらいわりと推奨されている設定。

まあつまり諦めてバージョン管理したら?ってことでは。

投稿2019/10/13 09:24

yumetodo

総合スコア5850

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

coh46

2019/10/16 03:32

ご回答ありがとうございます。 推奨されているとは知りませんでした。 一度 launch.json を push してしまって、「削除して再度 push しなおして」と言われた経緯があります。 こういうのはプロジェクトのルール次第なのですね。。。
coh46

2019/10/16 04:14

こんなコマンドがあるんですね! このコマンドは、既存のファイルを削除して.gitignoreに追記する(バージョン管理の対象外とする)ということでしょうか?
yumetodo

2019/10/16 05:55

>.gitignoreに追記する 違います。.gitignoreを反映します
guest

0

ちょっと昔の質問なので、質問された方が見てないかもしれませんが自分が行ってた方法を紹介します。

詳しくは以下の記事を確認してください。
https://qiita.com/orange634nty/items/852ff50a0bcdcce22f26

簡単に説明すると、 ~/.gitconfig

[core] excludesfile = ~/.gitignore_global

を追記して、 ~/.gitignore_global に ignore するファイルを記述します。
こうすると、グローバルでgitignoreが可能です。
全部のプロジェクト共通でignoreされると困る場合は使えませんが、それで問題ないなら有効な方法です。

注意点

コメントでもありますが、グローバルなignoreは意図しない挙動を誘発することがあります。
なので、一番の方法は他の回答者のおっしゃるようにgitの管理下に含めるようにチームと交渉することだと思います。

投稿2020/02/18 04:07

編集2020/02/18 16:59
orange634nty

総合スコア18

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yumetodo

2020/02/18 15:16

グローバルのignoreは意図しない挙動に悩まされがちな印象・・・(SourceTreeのデフォルト設定に叫ぶ人々を観測しつつ
orange634nty

2020/05/19 05:50 編集

> グローバルのignoreは意図しない挙動に悩まされがちな印象・・・(SourceTreeのデフォルト設定に叫ぶ人々を観測しつつ そうですね、なので一番はプロジェクトのgit管理下に入れるようにチームに交渉することだと思います。 ただ、見た雰囲気質問者が微妙に納得されてないようなので別案を提示してみました。 誤解が生まれるとよくないので、そちら注意点に追記しておきます。ありがとうございます。
guest

0

1.どうすれば.gitignoreに書いた内容が反映されるのか

! で始まる行は「ただしこれは除く」なので、
1行目だけ残して2行目以降を削除。

2.gitignore自体はgitに反映されるのか、反映してよいのか

反映される。
反映して良いかどうかはプロジェクトのルール次第?

3.そもそも毎回launch.jsonを作る必要があるのか(最初に一度作れば済む方法はないのか、みなさんはどのように対処しているのか)

他の方も言っているように、 push してしまえば良いと思う。

投稿2019/10/13 09:45

tanishi_a

総合スコア484

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

coh46

2019/10/16 03:30

ご回答ありがとうございます。 「!」については、認識が間違っていました。ありがとうございます。 一度 launch.json を push してしまって、「削除して再度 push しなおして」と言われた経緯があります。 こういうのはプロジェクトのルール次第なのですね。。。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問