Làm thế nào bạn có thể xuất danh sách mở rộng Visual Studio Code?


343

Tôi cần gửi tất cả các phần mở rộng đã cài đặt của mình cho các đồng nghiệp của tôi. Làm thế nào tôi có thể xuất chúng?

Trình quản lý tiện ích mở rộng dường như không làm gì cả ... Nó sẽ không cài đặt bất kỳ tiện ích mở rộng nào.

Câu trả lời:


574

Tự động

Nếu bạn đang mong đợi một công cụ một cửa dễ dàng để làm điều đó cho bạn, tôi sẽ đề nghị bạn xem xét tiện ích mở rộng Cài đặt đồng bộ hóa .

Nó sẽ cho phép

  1. Xuất cấu hình và tiện ích mở rộng của bạn
  2. Chia sẻ nó với đồng nghiệp và các đội. Bạn có thể cập nhật cấu hình. Cài đặt của họ sẽ tự động cập nhật.

Hướng dẫn sử dụng

  1. Đảm bảo rằng bạn có phiên bản Visual Studio Code mới nhất. Nếu bạn cài đặt qua cổng công ty, bạn có thể không có phiên bản mới nhất.

  2. Trên máy A

    Unix:

    code --list-extensions | xargs -L 1 echo code --install-extension
    

    Windows (PowerShell, ví dụ: sử dụng Terminal tích hợp của Visual Studio Code):

    code --list-extensions | % { "code --install-extension $_" }
    
  3. Sao chép và dán đầu ra echo vào máy B

    Sản lượng mẫu

    code --install-extension Angular.ng-template
    code --install-extension DSKWRK.vscode-generate-getter-setter
    code --install-extension EditorConfig.EditorConfig
    code --install-extension HookyQR.beautify
    

Hãy chắc chắn rằng bạn đã codecài đặt dòng lệnh. Để biết thêm thông tin, vui lòng truy cập Giao diện dòng lệnh (CLI) .


9
Ai đó có thể cung cấp một phiên bản Windows thân thiện của lệnh này không? xargs dường như là duy nhất cho UNIX.
damanptyltd

11
@damanptyltd Nếu bạn sử dụng GitHub, có lẽ bạn đã cài đặt Git Bash trên máy tính xách tay / máy tính Windows của mình. Bạn có thể sử dụng các lệnh Unix / Mac trong đó - đó là cách tôi đã làm cho nó hoạt động
Drenai

8
Đối với bất kỳ ai nghĩ rằng họ cần phiên bản windows, xin lưu ý, bạn phải chạy nó từ dòng lệnh vscode, bạn có thể lấy nó bằng cách nhấn Ctrl + `, sau đó chỉ cần dán nó vào!
Jared

1
Tôi đã sử dụng lệnh Ctrl + `với --list-extend ở trên để đưa các cài đặt của tôi ra khỏi windows vscode của tôi và sau đó sử dụng Ctrl +` để dán mã - cài đặt kết quả vào phiên bản vscode của tôi trên Linux (qua RDP). Nó chỉ hoạt động. Tải về và cài đặt tất cả chúng. Tuyệt vời
Trưởng khoa

5
Điều này sẽ hoạt động trong Windows PowerShell: code --list-extensions | % { "code --install-extension $_" }(Tôi cũng đã chỉnh sửa câu trả lời này)
powerzone3000

196

Tôi đã cần phải tự làm điều này một vài lần - đặc biệt là khi cài đặt trên máy khác.

Các câu hỏi thường gặp sẽ cung cấp cho bạn vị trí của thư mục của bạn

Visual Studio Code tìm kiếm các tiện ích mở rộng trong thư mục tiện ích mở rộng .vscode / extend của bạn. Tùy thuộc vào nền tảng của bạn, nó được đặt:

Windows %USERPROFILE%\.vscode\extensions
Mac ~/.vscode/extensions
Linux ~/.vscode/extensions

Điều đó sẽ cho bạn thấy một danh sách các phần mở rộng.

Tôi cũng đã thành công khi sử dụng Tiện ích mở rộng đồng bộ hóa cài đặt mã Visual Studio để đồng bộ hóa cài đặt với ý chính của GitHub.

Trong bản phát hành mới nhất của Visual Studio Code (tháng 5 năm 2016), giờ đây có thể liệt kê các phần mở rộng đã cài đặt trên dòng lệnh:

code --list-extensions

6
Đối với tôi (linux, mã Phiên bản 1.7.1) nó không hoạt động ... nó chỉ khởi động VS Code.
vanthome

@vanthome Tôi chưa bao giờ thử trên Linux nhưng tôi nghĩ điều này giống nhau: Lần đầu tiên tôi gặp vấn đề tương tự bạn gặp phải, cho đến khi tôi nhận ra tiện ích dòng lệnh trên thực tế nằm trong binthư mục cài đặt ứng dụng. Nếu bạn nhìn vào nội dung của nó, bạn sẽ thấy nó gọi hàm thực thi chính nhưng bảo nó thực thi CLI thay thế.
Yannick Meine

1
FYI bạn sẽ cần chạy 'Lệnh Shell: Cài đặt lệnh' code 'trong PATH' từ bảng lệnh (cmd / ctrl-shift-p) trong Mã VS và sau đó chạy mã trên trong thiết bị đầu cuối của bạn để cho phép nó hoạt động.
Carlin

51

Tôi đã phát triển một tiện ích mở rộng sẽ đồng bộ hóa tất cả Cài đặt mã Visual Studio của bạn qua nhiều trường hợp.

Các tính năng chính

  1. Sử dụng mã thông báo tài khoản github của bạn.
  2. Dễ dàng tải lên và tải xuống chỉ bằng một cú nhấp chuột.
  3. Lưu tất cả các cài đặt và tập tin đoạn trích.
  4. Khóa tải lên: Shift + Alt + u
  5. Phím tải xuống: Shift + Alt + d
  6. Nhập đồng bộ hóa để xem tất cả các tùy chọn đồng bộ hóa

Nó đồng bộ hóa

  1. Cài đặt tập tin
  2. Tập tin liên kết
  3. Khởi chạy tập tin
  4. Thư mục đoạn trích
  5. Phần mở rộng VSCode

Nguồn tài liệu chi tiết

Đồng bộ hóa VSCode ReadMe

Tải xuống tại đây: Đồng bộ hóa cài đặt mã VS


cái này có tự động cài đặt các phần mở rộng được đồng bộ hóa không?
Raghavendra

Đúng! Hãy thử điều đó và cho tôi biết
Shan Khan

bạn đang nhận được ngoại lệ nào trong bảng điều khiển dành cho nhà phát triển? mở một vấn đề github trong repo và chúng ta sẽ thấy
Shan Khan

Xin chào, tôi đã sử dụng tiện ích mở rộng của bạn, thật tuyệt, nhưng tôi không biết cách chia sẻ danh sách tiện ích mở rộng của mình với bạn bè.
vanduc1102

@ vanduc1102 - Kiểm tra liên kết này: shanalikhan.github.io/2016/09/02/iêu
Shan Khan

28

Phiên bản Windows (PowerShell) của câu trả lời của @ Benny

Máy A:

Trong thiết bị đầu cuối PowerShell của Visual Studio Code:

code --list-extensions > extensions.list

Máy B:

  1. Sao chép phần mở rộng.list vào máy B

  2. Trong thiết bị đầu cuối PowerShell của Visual Studio Code:

    cat extensions.list |% { code --install-extension $_}
    

1
Điều này chỉ khởi chạy một cửa sổ mã mới với tab Chào mừng cho tôi.
Gandalf Saxe

1
Câu trả lời này hoạt động hoàn hảo đối với tôi - tôi không có vấn đề gì trong việc cài đặt mọi thứ.
SE đình công một lần nữa Thật không may

Đây là câu trả lời ưa thích của tôi, vì nó không dựa vào xargs (so với câu trả lời được đánh giá cao hơn). Bây giờ nếu chỉ có "mã" được công nhận là một lệnh ... thở dài (nó luôn luôn là một cái gì đó)
GG2

Điều này hoạt động hoàn hảo trong việc tạo tệp .list của tôi và hiển thị cho tôi những tiện ích mở rộng nào tôi hiện đang sử dụng. Tôi chỉ cần danh sách như một tài liệu tham khảo. Không cần thực hiện quá trình sao chép. Cảm ơn nhiều.
klewis

Điều này đang làm việc tốt cho tôi. Cảm ơn
Dương Vương

21

Tôi đã sử dụng lệnh sau để sao chép phần mở rộng của mình từ vscode sang người trong cuộc vscode:

code --list-extensions | xargs -L 1 code-insiders --install-extension

Đối số -L 1cho phép chúng ta thực thi lệnh code-insiders --install-extensionmột lần cho mỗi dòng đầu vào được tạo bởicode --list-extensions


Điều này rất hữu ích cho init.shrepo trong dotfiles của tôi. Trước tiên tôi cài đặt tiện ích mở rộng từ một tệp và sau đó ghi tất cả các tiện ích mở rộng hiện được cài đặt vào tệp. Nhược điểm duy nhất là tôi sẽ phải xóa tệp nếu tôi muốn xóa tiện ích mở rộng nhưng nó sẽ hoạt động nếu tôi thêm.
ThaJay

11

Tạo lệnh windows cho phần mở rộng cài đặt.

for /F "tokens=*" %i in ('code --list-extensions')
   do @echo call code --install-extension %i >> install.cmd

9

Dành cho Linux

Trong OLD_MACHINE

code --list-extensions > vscode-extensions.list

Ở NEW_MACHINE

cat vscode-extensions.list | xargs -L 1 code --install-extension

cat: vscode-extensions.list: No such file or directory
vsync

Có vẻ như bạn có thể cải thiện câu trả lời của mình bằng cách chỉ định rằng vscode-extensions.listtệp phải được sao chép từ máy cũ sang máy mới.
Jørn Jensen

7

Mở bảng điều khiển VScode và viết:

code --list-extensions(hoặc code-insiders --list-extensionsnếu nội bộ vscode được cài đặt)

Sau đó chia sẻ với các đồng nghiệp dòng lệnh:

code --install-extension {ext1} --install-extension {ext2} --install-extension {extN}thay thế {ext1}, {ext2}..., {extN}với phần mở rộng được liệt kê

Đối với người trong cuộc vscode: code-insiders --install-extension {ext1} ...

Nếu họ sao chép / dán nó vào thiết bị đầu cuối dòng lệnh vscode, họ sẽ cài đặt các tiện ích mở rộng được chia sẻ

Thông tin thêm về quản lý mở rộng dòng lệnh


3

Có một phần mở rộng Trình quản lý mở rộng, có thể giúp ích. Nó dường như cho phép cài đặt một bộ tiện ích mở rộng được chỉ định trong settings.json.


Tôi đã thử nhưng plugin đó sẽ không cài đặt jshint mà tôi đã cố thêm vào tệp cài đặt của mình ...
Andrew


3

Tiện ích mở rộng:

code --list-extensions > extensions.txt

Cài đặt tiện ích mở rộng với bash (Linux, OSX và WSL):

cat extensions.txt | xargs code --list-extensions {}

Cài đặt tiện ích mở rộng trên Windows với PowerShell:

cat extensions.txt |% { code --install-extension $_}

1
Đáng buồn là điều này không hoạt động. Nó sử dụng --list-extensions, không cài đặt, vì vậy nó phải là một dòng nào đó --install-extensionnhưng khi được đổi thành nó vẫn không hoạt động
atwright147

3

https://code.visualstudio.com/docs/editor/extension-gallery#_workspace-recommends-extensions

Cách tốt hơn để chia sẻ danh sách tiện ích mở rộng là tạo bộ tiện ích mở rộng dựa trên không gian làm việc cho các đồng nghiệp của bạn.

Sau khi tạo danh sách các tiện ích mở rộng qua code --list-extensions | xargs -L 1 echo code --install-extension(kiểm tra $PATHmục nhập chứa Visual Studio Code C:\Program Files\Microsoft VS Code\bin\trước khi chạy các lệnh mã),

chạy Extensions: Configure Recommended Extensions (Workspace Folder)lệnh Visual Studio Code ( Ctrl+ Shift+ P) và đặt các phần mở rộng vào phần được tạo .vscode/extensions.json:

{
    "recommendations": [
        "eg2.tslint",
        "dbaeumer.vscode-eslint",
        "msjsdiag.debugger-for-chrome"
    ]
}

2

Tôi đã mở thư mục tiện ích mở rộng Visual Studio Code và thực thi:

find * -maxdepth 2 -name "package.json" | xargs grep "name"

Điều đó cung cấp cho bạn một danh sách mà từ đó bạn có thể trích xuất các tên mở rộng.


1

Nếu bạn có ý định chia sẻ cấu hình tiện ích mở rộng không gian làm việc trong một nhóm, bạn nên xem xét tính năng Tiện ích mở rộng được đề xuất của VSCode.

Để tạo tập tin này, mở bảng lệnh> Configure Recommended Extensions (Workspace Folder). Từ đó nếu bạn muốn nhận tất cả các tiện ích mở rộng hiện tại của mình và đặt chúng vào đây, bạn có thể sử dụng --list-extensionsnội dung được đề cập trong các câu trả lời khác, nhưng thêm một số awk để làm cho nó có thể dán vào một mảng json (bạn có thể nâng cao hơn hoặc ít hơn với như bạn muốn, đây chỉ là một ví dụ nhanh):

code --list-extensions | awk '{ print "\""$0"\"\,"}'

Ưu điểm của phương pháp này là cấu hình không gian làm việc toàn nhóm của bạn có thể được kiểm tra trong kiểm soát nguồn. Với tệp này có trong một dự án, khi dự án được mở, VSCode sẽ thông báo cho người dùng có các tiện ích mở rộng được đề xuất để cài đặt (nếu họ chưa có chúng) và có thể cài đặt tất cả chúng chỉ bằng một nút nhấn.


1
  1. code --list-extensions > list

  2. sed -i 's/.*/\"&\",/' list

  3. sao chép nội dung của tập tin listvà thêm vào .vscode/extensions.json trong "recommendations" phần.

  4. Nếu extensions.jsonkhông tồn tại thì tạo tập tin với nội dung sau

{
    "recommendations": [
        //add content of file list here
    ]
}
  1. chia sẻ extensions.jsontập tin và yêu cầu người dùng khác thêm vào .vscodethư mục. vscode sẽ nhắc cài đặt các phần mở rộng.

1

Cách xuất tiện ích mở rộng Mã VS của bạn từ thiết bị đầu cuối ở đây là git vì đó có thể là trợ giúp cho ai đó.

Cách xuất tiện ích mở rộng Mã VS của bạn từ thiết bị đầu cuối

Lưu ý: Chỉ các hệ thống giống Unix .

1) Xuất tiện ích mở rộng của bạn sang tệp shell:

code --list-extensions | sed -e 's/^/code --install-extension /' > my_vscode_extensions.sh

2) Xác minh tệp trình cài đặt tiện ích mở rộng của bạn:

less my_vscode_extesions.sh

Cài đặt tiện ích mở rộng của bạn (tùy chọn)

Chạy bạn my_vscode_extensions.shsử dụng Bash lệnh:

bash my_vscode_extensions.sh

0

Đối với những người đang tự hỏi làm thế nào để sao chép tiện ích mở rộng của bạn từ Visual Studio Code sang người dùng nội bộ Visual Studio Code, hãy sử dụng sửa đổi câu trả lời này của Benny:

code --list-extensions | xargs -L 1 echo code-insiders --install-extension

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.