DevToolPal
ไทย

ตัวสร้าง .gitignore

สร้างไฟล์ .gitignore โดยรวมเทมเพลตสำหรับภาษา เฟรมเวิร์ก เอดิเตอร์ และระบบปฏิบัติการที่คุณใช้

ทำงานในเครื่อง ไม่มีการอัปโหลด

ตัวเลือก

เทมเพลต · เลือกแล้ว 4 รายการ
ภาษา
เฟรมเวิร์ก
บิลด์และโครงสร้างพื้นฐาน
เกมเอนจิน
เอดิเตอร์และ IDE
ระบบปฏิบัติการ
อื่น ๆ

.gitignore

0 ตัวอักษร · 0 B

เครื่องมือนี้ทำอะไร

ตัวสร้าง .gitignore สร้างไฟล์ .gitignore สำหรับรีโพซิทอรีของคุณด้วยการรวมเทมเพลตสำเร็จรูป เลือกภาษา เฟรมเวิร์ก เครื่องมือบิลด์ เกมเอนจิน เอดิเตอร์ และระบบปฏิบัติการที่โปรเจกต์ใช้ เครื่องมือจะรวมกฎทั้งหมดเป็นไฟล์เดียวโดยมีหัวข้อ ### ชื่อ ### ในแต่ละส่วน พร้อมคัดลอกหรือดาวน์โหลด

มีเทมเพลตราวหกสิบตัวจากคอลเลกชัน github/gitignore ได้แก่ Node.js, Python, Java, Go, Rust, .NET, Swift, เฟรมเวิร์ก PHP อย่าง Laravel และ Symfony, Next.js, Flutter, Android, Terraform, Unity, Unreal Engine, Godot, VS Code, IDE ของ JetBrains, Vim, Emacs, macOS, Windows, Linux และอื่น ๆ ทุกอย่างทำงานในเบราว์เซอร์ ไม่มีการส่งคำขอใด ๆ

วิธีใช้

  1. คลิกเทมเพลตในรายการเพื่อเพิ่ม ช่องค้นหารู้จักชื่อเรียกอื่นที่พบบ่อยด้วย เช่น “typescript” จะพบ Node.js และ “intellij” จะพบ JetBrains
  2. เทมเพลตที่เลือกจะแสดงเป็นป้ายด้านบนตามลำดับที่เลือก และไฟล์จะเรียงตามลำดับนั้น คลิกป้ายเพื่อนำออก หรือกด ล้าง เพื่อเริ่มใหม่
  3. เพิ่มรายการเฉพาะของโปรเจกต์ใน กฎกำหนดเอง โดยคั่นด้วยจุลภาค เช่น .env, /dist, *.local รายการเหล่านี้จะต่อท้ายในส่วน ### Custom ###
  4. เลือกว่าจะเก็บคอมเมนต์อธิบายจากเทมเพลตหรือไม่ และจะลบกฎที่เทมเพลตก่อนหน้ามีอยู่แล้วหรือไม่
  5. คัดลอกผลลัพธ์หรือดาวน์โหลด ไฟล์ที่ดาวน์โหลดชื่อ .gitignore ให้บันทึกไว้ที่รากของรีโพซิทอรี

การเลือกจะถูกเก็บไว้ในที่อยู่ของหน้า จึงบุ๊กมาร์กหรือแชร์ลิงก์เพื่อสร้างไฟล์เดิมได้

ตัวอย่าง

เลือก Node.js, macOS และ VS Code เพิ่มกฎกำหนดเอง .env.local และปิดคอมเมนต์ จะได้ไฟล์ประมาณนี้ (ตัดบางส่วน)

### Node.js ###
logs
*.log
npm-debug.log*
…
node_modules/
…

### macOS ###
.DS_Store
.AppleDouble
.LSOverride
…

### VS Code ###
.vscode/*
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json
!.vscode/*.code-snippets
!*.code-workspace
*.vsix

### Custom ###
.env.local

แพตเทิร์นที่ขึ้นต้นด้วย ! จะนำสิ่งที่กฎก่อนหน้าตัดออกกลับมา ในที่นี้การตั้งค่า งาน และคอนฟิกการรันของ VS Code ที่ใช้ร่วมกันยังอยู่ในรีโพซิทอรี ขณะที่สถานะเอดิเตอร์ส่วนตัวถูกละเว้น การเพิ่ม .env เป็นกฎกำหนดเองจะไม่เปลี่ยนอะไร เพราะเทมเพลต Node.js มีอยู่แล้ว

เคล็ดลับ

  • ใส่กฎของเครื่องมือส่วนตัว (ไฟล์ swap ของเอดิเตอร์ เมทาดาทาของระบบ) ไว้ในไฟล์ยกเว้นส่วนกลาง ทุกรีโพซิทอรีจะได้ประโยชน์โดยไม่ต้องเขียนซ้ำ
  • เครื่องหมายทับท้ายอย่าง build/ ตรงกับไดเรกทอรีเท่านั้น ส่วนเครื่องหมายทับนำหน้าอย่าง /build ผูกกฎไว้กับรากของรีโพซิทอรี
  • ใช้ git check-ignore -v <พาธ> เพื่อดูว่าบรรทัดใดของไฟล์ ignore ใดตรงกับพาธนั้น
  • อย่าพึ่ง .gitignore ในการปกป้องข้อมูลลับที่ commit ไปแล้ว ให้เปลี่ยนข้อมูลลับและเขียนประวัติใหม่

คำถามที่พบบ่อย

› เทมเพลตมาจากไหน

เป็นสำเนาที่รวมมากับหน้าเว็บจากคอลเลกชันทางการ github/gitignore ซึ่ง GitHub เผยแพร่เป็นสาธารณสมบัติภายใต้ CC0 ไม่มีการดาวน์โหลดใด ๆ ขณะใช้งาน เทมเพลตมาพร้อมกับหน้าเว็บแล้ว

› ทำไมไฟล์ยังถูกติดตามอยู่หลังเพิ่มลงใน .gitignore แล้ว

.gitignore มีผลเฉพาะไฟล์ที่ยังไม่ถูกติดตาม หากไฟล์เคย commit ไปแล้ว ให้นำออกจากดัชนีด้วย git rm --cached <ไฟล์> (ใส่ -r สำหรับโฟลเดอร์) แล้ว commit ไฟล์จะยังอยู่บนดิสก์และถูกละเว้นนับจากนั้น

› ตัวเลือก ลบกฎที่ซ้ำกัน ทำอะไร

เทมเพลตหลายตัวมีกฎเหมือนกัน เช่น Java และ Kotlin ต่างละเว้น *.class ส่วน C และ C++ ต่างละเว้น *.o เมื่อเปิดตัวเลือกนี้ กฎแต่ละข้อจะถูกเขียนเฉพาะครั้งแรกที่ปรากฏ และคอมเมนต์หัวข้อที่กฎทั้งหมดถูกลบไปแล้วก็จะถูกตัดออกด้วย ปิดตัวเลือกนี้หากต้องการเทมเพลตแต่ละตัวตรงตามต้นฉบับ

› ควร commit ไฟล์ .gitignore หรือไม่

ควร .gitignore ที่ commit แล้วมีผลกับทุกคนที่ clone รีโพซิทอรี ส่วนกฎที่เกี่ยวกับเครื่องของคุณเท่านั้น เช่น เอดิเตอร์หรือระบบปฏิบัติการ สามารถใส่ในไฟล์ยกเว้นส่วนกลาง (git config --global core.excludesFile ~/.gitignore_global) ได้เช่นกัน