이 .vscode
폴더는 소스 제어에 전념해야합니까?
새로운 프로젝트에서는 settings.json
파일을 제외한 폴더가 비어 있습니다. 이 폴더에는 어떤 것들이 있습니까? .vs
폴더와 같이 머신별로, 개발자별로, 커밋되지 않습니까? 아니면 모든 개발자가이 폴더를 공유해야하므로 커밋해야합니까?
파일 상단의 주석은 .vscode/settings.json
다음과 같습니다.
// Place your settings in this file to overwrite default and user settings.
{
}
이것은 폴더에 프로젝트 별 설정이 포함되어 소스에 포함되어야 함을 의미합니다. 또한 UserVoice에 대한이 게시물은 일부 입력 내용이 입력되어 커밋해야 함을 암시하는 것으로 보입니다.
답변
.vscode
팀과 설정, 작업 구성 및 디버그 구성을 공유 하려면 폴더를 체크인하십시오 . 팀에서 설정을 적용하려면 일반적으로 설정 (예 : 공백 대 탭)을 팀과 공유하는 것이 좋습니다. VS Code 팀에서는 팀이 VS Code에 대해 동일한 디버그 대상 및 작업 대상 집합을 갖기를 원하기 때문에 디버그 및 작업 별 설정도 공유합니다.
그러나 .vscode
설정을 위해 프로젝트에 폴더 가 필요하지 않습니다 . 사용자 수준에서 설정을 구성 할 수도 있습니다.
답변
커밋 / 무시 사이에 세 번째 영리한 옵션이 있습니다 : .default
접미사로 커밋 .
예를 들어, 당신은 추가 할 수 있습니다 settings.json
에 .gitignore
, 커밋 settings.json.default
이와 (나의 팀) 일반적인 관행 훨씬처럼 .env
파일.
비디오 커밋 편집기 설정에서 버전 관리 까지이 조언을 받았습니까? 에 의해 마티아스 페터 요한슨
답변
- 의
.vscode/settings.json
예외를 제외하고는 절대 커밋하지 마십시오search.exclude
. 실제로 필요한 경우 다른 개발자 에게 적용 하려는 프로젝트의 특정 설정 만 설정하도록주의하십시오 . - 유효성 검사, 서식, 컴파일 사용하는 다른 파일이 좋아하는
package.json
,.eslint
,tsconfig.json
, 등 - 포함해야하는 유일한 .vscode는 디버깅을위한 복잡한 시작 구성입니다.
- 시스템에 개인 정보를 넣을 수있는 타사 확장 프로그램이있을 수 있습니다.
당신이 할 수없는 것은 전체 settings.json 내용 파일을 복사하여 붙여 넣는 것 .vscode/settings.json
입니다. 일부 사람들 이이 작업을 수행하고 파일을 커밋하는 것이 복잡합니다. 이 경우 다른 작업 공간을 파괴 할뿐만 아니라 최악의 경우 미학, UI, 경험을 좋아하지 않아야하는 설정을 사용자에게 적용해야합니다. 일부는 시스템에 매우 의존적이기 때문에 환경을 깨뜨릴 수 있습니다. 시력에 문제가있어 editor.*
사용자 설정이 개인화되고 프로젝트를 열면 영상이 변경된다고 상상해보십시오 . 시력에 문제가 있다고 상상해보십시오. 사용자 편집기. * 설정을 개인화하여 작업해야합니다. 화가 나 겠어요
당신이 진지한 경우 커밋하지 마십시오 .vscode/settings.json
. 일반적으로 유효성 검사, 컴파일과 같은 특정 프로젝트에 유용한 설정은 의미가 있지만 일반적으로 .eslint, tsconfig.json, .gitignore, package.json과 같은 특정 도구 구성 파일을 사용할 수 있습니다. 등등. vscode 작성자가 새로운 이민 경험을 단순화하기 위해 파일을 추가했다고 생각하지만 진지하게 원한다면 그렇게하지 마십시오!
유일한 예외이며 매우 특별한 경우 search.exclude가 될 수 있습니다.
답변
다른 답변 요약
일반적으로 .vscode
폴더를 제외 하고 다른 개발자가 공유 설정을 다시 만들 수 있도록 선택된 JSON 파일을 남겨 두는 것이 좋습니다.
다음과 같은 설정 예 :
- 테스트 스위트를 실행하기위한 언어 별 테스트 구성 (
settings.json
) - 이 저장소에 사용 된 언어 규칙을 적용하기위한 린터 및 코드 형식 도구의 확장 설정 (
settings.json
) - 구성 실행 및 디버그 (
launch.json
) - 공유 작업-VS 코드로 관리되는 경우 (
tasks.json
)
일부 설정은 작업 공간 파일에 저장하거나 .vscode 폴더에서 전송할 수 있습니다. 아래를 참조하십시오.
.gitignore
사용할 샘플 코드 (및 어디서 구할 수 있는지)
https://gitignore.io 에서 제안 된 설정은 다음과 같습니다 . 최신 권장 .gitignore
파일 을 얻기 위해 “VisualStudioCode”를 검색 할 수 있습니다 . 나는이 웹 사이트 .gitignore
를 나의 새로운 repos 대부분의 출발점으로 사용합니다 :
# Created by https://www.gitignore.io/api/visualstudiocode
# Edit at https://www.gitignore.io/?templates=visualstudiocode
### VisualStudioCode ###
.vscode/*
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json
### VisualStudioCode Patch ###
# Ignore all local history of files
**/.history
# End of https://www.gitignore.io/api/visualstudiocode
상기에서 .gitignore
파일의 .vscode/*
라인은 모든 것을 제외 말한다 .vscode
폴더를하지만, 다음 !.vscode/a_specific_file
라인에 해당 폴더 (일부 특정 파일을 무시 “하지”이눔으로 말할 settings.json
, launch.json
등). 결과적으로 .vscode
다른 라인 중 하나에 특별히 이름이 지정된 파일을 제외하고 모든 것이 폴더에서 제외됩니다.
다른 요인과 자신을 알아내는 방법 …
리포지토리에 .vscode
폴더를 포함 한다고해서 실제로 다른 IDE (또는 텍스트 / 코드 편집기)를 사용하는 사람은 다 치지 않습니다 .
그러나이 파일에 환경에 따라 다른 환경이 필요한 일반 설정이 포함 된 경우 VS 코드를 사용하는 다른 사람들에게 상처를 줄 수 있습니다. pythonpath
에서 .vscode/settings.json
). 핵심은 로컬 환경에 맞춤 설정을 저장하지 않고 모든 사람이 사용할 수있는 설정 만 공유하는 것입니다.
예를 들어, IDE 설정 파일에 repo 또는 파일 / 라이브러리 등의 절대 경로가 있으면 나쁘지 않습니다. 그러나 모든 참조가 상대적이라면 repo를 사용하는 모든 사람에게 효과적이어야합니다 (그러나 Windows / Unix 간의 경로 사양 차이에주의하십시오).
사용자, 작업 공간 및 폴더 설정 정보
참고 :.vscode
폴더 의 설정 파일 은 일반적으로 설정 의 폴더 버전을 변경할 때만 업데이트됩니다 (많은 예외가있는 것 같습니다).
- 사용자 설정 을 변경하면 일반적으로 다른 곳에 저장됩니다.
- 작업 공간 설정 을 변경하면 일반적으로
*.code-workspace
현재 사용중인 폴더에 저장됩니다 (폴더 설정 파일로 이동하지만 수동으로 이동할 수 있습니다).
즉, 개인 PC에 대한 사용자 정의 설정을 사용자 설정에 배치하고, 특정 프로젝트 / 패키지에 대한 일반적인 설정을 가능하면 다른 것에 배치해야합니다.
- 파이썬 확장을 사용할 때
.vscode/settings.json
파일 ( 폴더 설정을 저장하는)은 항상 설정 아래의 절대 경로를 저장pythonpath
하므로.gitignore
파일 에서 제외를 제거 하고 더 이상 파이썬 저장소에 저장하지 않습니다. 상대 경로로 저장하더라도 VS Code는 절대 경로로 재설정합니다. - 대신에, 난 그냥 폴더 저장 나는 예는 생성 (작업 공간과 같은 코드의 사용을 필요
myproject.code-workspace
로 파일 로> 저장 작업 공간을 – 파일을 그런 식으로, 당신은 REPO에 작업 공간 파일로 전환을 제어하고 저장할 수 있습니다 제외한있다. 폴더 설정 파일 (.vscode/settings.json
) 작업 영역과 폴더 설정 파일간에 설정을 이동하여 저장할 내용과 저장되지 않는 내용을 제어 할 수 있습니다. 작업 공간 파일은 폴더 설정 파일의 모든 항목을 무시한다는 점을 명심하십시오.
짧고 짧습니다. 작업 공간 파일을 사용하고 가장 일반적인 설정을 넣을 수 있지만 로컬 설정을 폴더 설정 파일에 넣는 동안 사용하는 확장명 / 언어에 따라 다릅니다.
물론 .vscode/settings.json
파일 을 저장 하거나 그 일부 를 저장해야하는 다른 이유가있을 수 있습니다 . 또는 현재 언어의 설정에 문제가되지 않을 수 있습니다.
귀하의 마일리지가 다를 수 있습니다…
답변
왜 여기 주변의 주장 외에 실습을 보지 않겠습니까?
.vscode
내가 지금까지 찾은 가장 큰 프로젝트 중 하나 는 Mozilla Firefox 입니다. Firefox 팀 이 일반적인 작업 과 권장되는 확장 기능을 공유 하는 것 같습니다 .
그래서 .vscode
당신이하고있는 일을 알고있는 한 계속 유지하는 것이 나쁜 생각이 아니라고 생각합니다 .
공유하는 다른 큰 프로젝트가 표시되면이 게시물을 업데이트하겠습니다 .vscode
.
답변
다른 답변과 동일합니다 : 아니요.
예를 들어, Git 2.19 (Q3 2018)에서 선택한 접근 방식을 고려하면 contrib/
VSCode 사용자가 Git 코드베이스를보다 잘 사용하는 데 도움이 되는 스크립트 (in )가 추가 됩니다.
다시 말해서, .vscode
컨텐츠를 생성하십시오 (아직없는 경우), 버전을 지정하지 마십시오.
참조 12861e2 커밋 , 2a2cdd0 커밋 , 5482f41 커밋 , f2a3b68 커밋 , 0f47f78 커밋 , b4d991d 커밋 , 58930fd 커밋 , dee3382 커밋 , 54c06c6 커밋 에 의해 (2018 7월 30일) (요하네스 Schindelin을 dscho
) .
(가 합병 – Junio C 하마노 gitster
– 에 30cf191 커밋 2018 15 팔월)
contrib
: VS 코드 구성을 초기화하는 스크립트 추가VS Code는 가볍지 만 강력한 소스 코드 편집기로 데스크탑에서 실행되며 Windows, macOS 및 Linux에서 사용할 수 있습니다.
다른 언어 중에서도 확장을 통해 C / C ++를 지원하므로 코드를 빌드 및 디버깅 할뿐만 아니라 Intellisense (예 : 코드 인식 완료 및 유사한 기능)를 제공합니다.이 패치는 VS 코드와 효과적으로 작동하도록 환경을 설정하는 데 도움이되는 스크립트를 추가 합니다. Unix 쉘 스크립트를 실행
contrib/vscode/init.sh
하여 관련 파일을 만들고 VS 코드에서 Git 소스 코드의 최상위 폴더를 엽니 다 .
답변
대답은 “아니오”입니다. .vscode 폴더는이 편집 기용 이므로 다른 사람을 혼동하는 경우 이러한 개인 설정을 저장소로 푸시 해서는 안되므로 변경 사항을 무시 하기 위해 프로젝트의 .gitignore 파일에 추가 할 수 있습니다.