ทำยังไงให้ VSCode ค้นไฟล์ใน .gitignore ได้?
สวัสดีครับเพื่อน ๆ วันนี้ผมมีทริคเล็ก ๆ น้อย ๆ มาแชร์ให้คนที่ใช้ Visual Studio Code (หรือที่เราเรียกกันติดปากว่า VSCode) อย่างเรา ๆ บางทีเคยเจอปัญหานี้กันบ้างมั้ยครับ? เวลากด Ctrl + P
เพื่อค้นหาไฟล์ในโปรเจกต์ แล้วมันดันไม่โชว์ไฟล์บางตัวที่เราอยากได้ โดยเฉพาะไฟล์ที่อยู่ใน .gitignore
เช่นพวก node_modules
หรือไฟล์ที่เราเซตให้มันซ่อนไว้ ผมเองก็เคยหัวร้อนกับเรื่องนี้เหมือนกัน เพราะบางทีอยากดูโค้ดในนั้นแป๊บ ๆ แต่หาไม่เจอซักที!
จริง ๆ แล้ว VSCode มันฉลาดนะ มันจะเคารพ .gitignore
ของเราแบบเป๊ะ ๆ เลย ถ้าเราบอกว่า "เฮ้ย ไฟล์นี้ไม่ต้องโชว์นะ" มันก็จะไม่โชว์จริง ๆ แต่บางครั้งเราก็อยากให้มันยืดหยุ่นกว่านี้หน่อย อยากให้มันค้นทุกอย่างมาให้ดูบ้าง วันนี้ผมเลยจะมาเล่าให้ฟังว่าเราจะแก้ตรงนี้ยังไงได้บ้าง ง่าย ๆ ไม่ต้องงมโค้ดให้ปวดหัว ตามมาเลย!
ขั้นตอนที่ 1: ไปที่ Settings ก่อนเลย
เริ่มต้นง่าย ๆ ครับ กด Ctrl + ,
(ถ้าใช้ Mac ก็ Cmd + ,
) เพื่อเปิดหน้า Settings ของ VSCode ขึ้นมา หรือถ้าชอบเมนูแบบคลาสสิก ก็ไปที่ File > Preferences > Settings
ได้เลย พอเข้ามาแล้วจะเจอช่องค้นหาด้านบน ให้พิมพ์ว่า search
หรือ ignore
ลงไป
ขั้นตอนที่ 2: ปิดกฏ "Use Ignore Files"
ทีนี้ให้เลื่อน ๆ ดูหน่อยครับ หาตัวเลือกที่เขียนว่า Search: Use Ignore Files
เจอปุ๊บจะเห็นว่ามันถูกติ๊กไว้อยู่แล้วตั้งแต่แรก นี่แหละตัวการที่ทำให้ VSCode มันเชื่อฟัง .gitignore
แบบสุด ๆ ถ้าเราอยากให้มันค้นทุกไฟล์ รวมถึงที่อยู่ใน .gitignore
ด้วย ก็แค่ ยกเลิกติ๊ก ตรงนี้ซะ! เสร็จแล้วลองกด Ctrl + P
ดูใหม่ คราวนี้ไฟล์ที่เคยหายไปน่าจะโผล่มาให้เห็นแล้ว
ขั้นตอนที่ 3: เช็ก Files: Exclude ด้วยนะ
บางทีแค่ปิด Use Ignore Files
อาจยังไม่พอ เพราะ VSCode มีอีกตั้งค่าหนึ่งที่ชื่อ Files: Exclude
ซึ่งมันจะซ่อนไฟล์บางประเภทออกไปจากสายตาเรา ถ้าในนี้มีการระบุไฟล์หรือโฟลเดอร์ที่เราอยากเห็น (เช่น *.log
หรือ dist
) ก็ลบมันออกจากลิสต์ซะ หรือถ้าขี้เกียจเช็กทีละตัว ก็ปล่อยให้มันว่าง ๆ ไปเลย
ถ้าอยากให้มีผลแค่โปรเจกต์นี้
บางคนอาจจะคิดว่า "เฮ้ย ฉันไม่อยากให้มันเปลี่ยนทุกโปรเจกต์นะ แค่โปรเจกต์นี้พอ" อันนี้ก็ได้ครับ วิธีคือเข้าไปที่โฟลเดอร์ของโปรเจกต์ แล้วหาโฟลเดอร์ .vscode
(ถ้ายังไม่มีก็สร้างใหม่ได้เลย) ข้างในนั้นสร้างไฟล์ชื่อ settings.json
แล้วใส่โค้ดนี้ลงไป:
{
"search.useIgnoreFiles": false
}
แค่นี้ VSCode ก็จะปิดการใช้ .gitignore
เฉพาะในโปรเจกต์นี้เท่านั้น โปรเจกต์อื่นยังคงเหมือนเดิม ไม่ต้องกลัววุ่นวาย
ทดสอบแล้วลุยต่อ!
หลังจากเซตทุกอย่างเรียบร้อย ลองกด Ctrl + P
แล้วพิมพ์ชื่อไฟล์ที่เคยหายไปดูครับ เช่น ถ้าคุณเคย ignore node_modules
ไว้ คราวนี้มันน่าจะโผล่ขึ้นมาให้เห็นแล้ว ถ้ายังไม่เจออีก ลองรีสตาร์ท VSCode ดู บางทีมันอาจจะงง ๆ ต้องรีเฟรชหน่อย
สรุปสั้น ๆ
วิธีนี้คือการบอก VSCode ว่า "เฮ้ย อย่าซีเรียสกับ .gitignore
มากนัก ค้นมาให้หมดเลย!" มันช่วยประหยัดเวลาได้เยอะเลยครับ โดยเฉพาะตอนที่เราอยากส่องไฟล์แปลก ๆ ที่ปกติซ่อนอยู่ หวังว่าทริคนี้จะช่วยให้ชีวิตการเขียนโค้ดของเพื่อน ๆ สบายขึ้นนะ ถ้ามีคำถามอะไรเพิ่ม ถามมาได้เลย ผมยินดีช่วย!
Reference
- Visual Studio Code Official Documentation - Basic Editing
URL: https://code.visualstudio.com/docs/editor/codebasics#_advanced-search-options
รายละเอียด: เอกสารอย่างเป็นทางการของ VSCode ที่อธิบายเกี่ยวกับการค้นหาขั้นสูง รวมถึงการตั้งค่าsearch.useIgnoreFiles
และวิธีที่ VSCode จัดการกับ.gitignore
- Visual Studio Code Official Documentation - User and Workspace Settings
URL: https://code.visualstudio.com/docs/getstarted/settings
รายละเอียด: อธิบายวิธีการปรับแต่งการตั้งค่าส่วนตัว (User Settings) และการตั้งค่าเฉพาะโปรเจกต์ (Workspace Settings) รวมถึงการแก้ไขไฟล์settings.json
- Stack Overflow - "vscode - how to get file search (not content) to include (git-) ignored files"
URL: https://stackoverflow.com/questions/55861408/vscode-how-to-get-file-search-not-content-to-include-git-ignored-files
รายละเอียด: คำถามและคำตอบจากชุมชนเกี่ยวกับวิธีทำให้Ctrl + P
ค้นหาไฟล์ที่ถูก ignore โดย.gitignore
มีการพูดถึงการตั้งค่าsearch.useIgnoreFiles
- GitHub - Visual Studio Code Issues - Search Issues
URL: https://github.com/microsoft/vscode/wiki/Search-Issues
รายละเอียด: หน้า wiki ที่รวบรวมปัญหาและวิธีแก้ไขเกี่ยวกับการค้นหาใน VSCode รวมถึงการทำงานของ.gitignore
และการตั้งค่าที่เกี่ยวข้อง