เป็นไปได้อย่างไรที่จะส่งออกการตั้งค่าและรหัส Visual Studio ทั้งหมดและนำเข้าไปยังเครื่องอื่น
เป็นไปได้อย่างไรที่จะส่งออกการตั้งค่าและรหัส Visual Studio ทั้งหมดและนำเข้าไปยังเครื่องอื่น
คำตอบ:
มีส่วนขยายสำหรับ Visual Studio Code ที่เรียกว่าการซิงค์การตั้งค่า https://marketplace.visualstudio.com/items?itemName=Shan.code-settings-sync
มันซิงค์การตั้งค่าของคุณโดยส่วนสำคัญ (สรุปโดย GitHub) มันทำงานเหมือนกับส่วนขยาย Atom.io ที่เรียกว่า settings-sync
ด้วย VSCode เวอร์ชันปัจจุบัน ณ วันที่เขียนนี้ (1.22.1) คุณสามารถค้นหาการตั้งค่าของคุณได้
~/.config/Code/User
บน Linux (ในกรณีของฉัน, อนุพันธ์ของ Ubuntu)C:\Users\username\AppData\Roaming\Code\User
บน Windows 10~/Library/Application Support/Code/User/
บน Mac OS X (ขอบคุณChristophe De Troyer )ไฟล์ที่อยู่และsettings.json
keybindings.json
เพียงคัดลอกไปยังเครื่องเป้าหมาย
ส่วนขยายของคุณอยู่ใน
~/.vscode/extensions
บน Linux และ Mac OS XC:\Users\username\.vscode\extensions
บน Windows 10 (เช่นเดียวกับสถานที่เดียวกัน)หรือเพียงไปที่ส่วนขยายแสดงส่วนขยายที่ติดตั้งและติดตั้งส่วนขยายในการติดตั้งเป้าหมายของคุณ สำหรับฉันการคัดลอกส่วนขยายทำงานได้ดี แต่อาจเป็นเฉพาะส่วนขยายโดยเฉพาะอย่างยิ่งหากย้ายระหว่างแพลตฟอร์มขึ้นอยู่กับสิ่งที่ส่วนขยายทำ
.workspace
ไฟล์หรือใน.vscode/settings.json
เพื่อลูกหลานโพสต์นี้กล่าวถึง
ในรุ่นล่าสุดของ VSCode (พฤษภาคม 2016) ตอนนี้มันเป็นไปได้ที่จะแสดงรายการส่วนขยายที่ติดตั้งในบรรทัดคำสั่ง
code --list-extensions
สำหรับ Mac คุณอาจจะชอบ:
"/Applications/Visual Studio Code.app//Contents/Resources/app/bin/code" --list-extensions
ในการติดตั้งใช้งาน:
--install-extension <ext> //see 'code --help'
เช่นเดียวกับคำตอบของ Big Rich คุณสามารถทำสิ่งต่อไปนี้:
$ code --list-extensions | xargs -L 1 echo code --install-extension
นี่จะแสดงรายการส่วนขยายของคุณด้วยคำสั่งเพื่อติดตั้งส่วนขยายดังนั้นคุณสามารถคัดลอกและวางผลลัพธ์ทั้งหมดลงในเครื่องอื่นของคุณ:
ตัวอย่าง:
code --install-extension EditorConfig.EditorConfig
code --install-extension aaron-bond.better-comments
code --install-extension christian-kohler.npm-intellisense
code --install-extension christian-kohler.path-intellisense
code --install-extension CoenraadS.bracket-pair-colorizer
นำมาจากคำตอบที่ได้รับที่นี่
หมายเหตุ: ตรวจสอบให้แน่ใจว่าคุณได้เพิ่มรหัส VS ในเส้นทางของคุณก่อน สำหรับ mac คุณสามารถทำสิ่งต่อไปนี้:
~/Library/Application\ Support/Code/User
ตั้งค่าผู้ใช้ของคุณอยู่ใน
หากคุณไม่กังวลเกี่ยวกับการซิงค์และเป็นเพียงครั้งเดียวคุณสามารถคัดลอกไฟล์keybindings.json
และsettings.json
ไปยังโฟลเดอร์ที่เกี่ยวข้องในเครื่องใหม่ของคุณ
นามสกุลของคุณอยู่ใน~/.vscode
โฟลเดอร์ ส่วนขยายส่วนใหญ่ไม่ได้ใช้การเชื่อมโยงดั้งเดิมและควรทำงานอย่างถูกต้องเมื่อคัดลอกไป คุณสามารถติดตั้งใหม่ได้ด้วยตนเอง
ฉันต้องการวิธีของฉันเองในการซิงโครไนซ์ส่วนขยาย VSCode ทั้งหมดระหว่างแล็ปท็อปโดยใช้.dotfiles
และสคริปต์ขนาดเล็กเพื่อทำการอัปเดตโดยอัตโนมัติ วิธีนี้ช่วยฉันทุกครั้งเมื่อฉันต้องการติดตั้งส่วนขยายทั้งหมดที่ฉันมีโดยไม่มีกิจกรรมเมาส์เดี่ยวใน VSCode หลังจากติดตั้ง (ผ่านทาง Brew)
ดังนั้นฉันเพิ่งเขียนส่วนขยายใหม่ที่เพิ่มลงในแต่ละไฟล์. txt ที่เก็บไว้ใน.dotfiles
โฟลเดอร์ของฉัน หลังจากนั้นฉันดึงสาขาหลักในแล็ปท็อปเครื่องอื่นเพื่อรับไฟล์ที่ทันสมัยพร้อมกับส่วนขยายทั้งหมด
การใช้สคริปต์ซึ่ง Big Rich เขียนไว้ก่อนหน้านี้มีการเปลี่ยนแปลงอีกหนึ่งครั้งฉันสามารถซิงค์ส่วนขยายทั้งหมดโดยอัตโนมัติได้เกือบทั้งหมด
cat dart-extensions.txt | xargs -L 1 code --install-extension
และยังมีอีกวิธีหนึ่งในการทำให้กระบวนการนั้นเป็นแบบอัตโนมัติ ที่นี่คุณสามารถเพิ่มสคริปต์ซึ่งค้นหาส่วนขยาย VSCode แบบเรียลไทม์และแต่ละครั้งเมื่อคุณใช้ส่วนต่างระหว่างcode --list-extensions
คำสั่งและไฟล์. txtของ.dotfiles
คุณคุณสามารถอัปเดตไฟล์ของคุณและผลักดันไปยัง repo ระยะไกลได้
ฉันได้สร้างสคริปต์ python สำหรับส่งออกการตั้งค่า vsc เป็นไฟล์ zip ไฟล์เดียว https://gist.github.com/wonderbeyond/661c686b64cb0cabb77a43b49b16b26e
คุณสามารถอัปโหลดไฟล์ zip ไปยังที่จัดเก็บข้อมูลภายนอก
$ vsc-settings.py export
Exporting vsc settings:
created a temporary dump dir /tmp/tmpf88wo142
generating extensions list
copying /home/wonder/.config/Code/User/settings.json
copying /home/wonder/.config/Code/User/keybindings.json
copying /home/wonder/.config/Code/User/projects.json
copying /home/wonder/.config/Code/User/snippets
adding: snippets/ (stored 0%)
adding: snippets/go.json (deflated 56%)
adding: projects.json (deflated 67%)
adding: extensions.txt (deflated 40%)
adding: keybindings.json (deflated 81%)
adding: settings.json (deflated 59%)
VSC settings exported into /home/wonder/vsc-settings-2019-02-25-171337.zip
$ unzip -l /home/wonder/vsc-settings-2019-02-25-171337.zip
Archive: /home/wonder/vsc-settings-2019-02-25-171337.zip
Length Date Time Name
--------- ---------- ----- ----
0 2019-02-25 17:13 snippets/
942 2019-02-25 17:13 snippets/go.json
519 2019-02-25 17:13 projects.json
471 2019-02-25 17:13 extensions.txt
2429 2019-02-25 17:13 keybindings.json
2224 2019-02-25 17:13 settings.json
--------- -------
6585 6 files
PS: คุณอาจใช้คำvsc-settings.py import
สั่งย่อยสำหรับฉัน
ขอบคุณสำหรับ@michalczukm ,
ฉันได้ตั้งค่าปลั๊กอิน" การตั้งค่าการซิงค์ " บน VSCode เพื่อซิงค์การตั้งค่าบางอย่างกับ Gist
หากคุณต้องการใช้ "การตั้งค่าการซิงค์" คุณสามารถดูโพสต์นี
สำรองและซิงโครไนซ์การตั้งค่า VSCode ด้วย GitHub Gist | Mike F Robbins
ขณะนี้มีปัญหาคำขอคุณลักษณะแบบเปิดที่ดูเหมือนจะอยู่ในช่วงข้อเสนอการออกแบบ ฉันจะรอการสนับสนุนอย่างเป็นทางการนี้ คุณสามารถสมัครสมาชิกเพื่อรับปัญหาและรับการแจ้งเตือนเกี่ยวกับความคืบหน้า
https://github.com/microsoft/vscode/issues/2743#issuecomment-560116420