Pembanding Diff YAML
Bandingkan dua dokumen YAML dan lihat dengan tepat apa yang berubah — kunci yang ditambahkan, dihapus, dan diubah beserta path ke masing-masing, plus unified diff tingkat baris dari YAML yang dinormalisasi. Perbandingan struktural mengabaikan indentasi, tanda kutip, dan format flow-vs-block, serta mendukung multi-document stream. Berjalan sepenuhnya di browser Anda.
Input
Opsi
Gunakan "mengabaikan urutan" saat daftar sebenarnya adalah set tak berurut dan mengacak ulang urutannya tidak dianggap sebagai perubahan.
Perlakukan 1 dan "1", atau true dan "true", sebagai sama — berguna saat satu file memberi tanda kutip pada nilainya dan yang lain tidak.
Output
| Metrik | Nilai |
|---|---|
| No data yet | |
Setiap perbedaan dikunci berdasarkan path-nya — + ditambahkan, - dihapus, ~ diubah.
Kedua dokumen diserialisasi ulang dengan indentasi 2 spasi terlebih dahulu, sehingga perbedaan format tidak menimbulkan derau.
Enter both documents to see the differences.
Panduan
Tempel dua versi file YAML — manifest Kubernetes sebelum dan sesudah perubahan, dua konfigurasi pipeline CI, atau docker-compose.yml di berbagai lingkungan — dan lihat dengan tepat apa perbedaannya. Pembanding diff YAML online gratis ini membaca kedua dokumen sebagai YAML yang sudah di-parse, bukan teks biasa, jadi menggeser indentasi blok, memberi tanda kutip pada nilai, atau beralih dari block style ke flow style tidak akan muncul sebagai perubahan. Anda mendapatkan laporan struktural yang dikunci berdasarkan path ke setiap perbedaan, plus unified diff ternormalisasi yang bisa disalin ke file patch. Semuanya berjalan di browser Anda, tanpa unggahan dan tanpa pendaftaran.
Cara pakai
- Tempel file asli ke YAML A dan file yang sudah diubah ke YAML B.
- Pilih cara item daftar dibandingkan — berdasarkan posisi (bawaan; tepat untuk daftar berurutan seperti argumen container) atau mengabaikan urutan (tepat untuk daftar yang sebenarnya adalah set, seperti tag atau host yang diizinkan).
- Aktifkan Abaikan perbedaan tipe jika satu file memberi tanda kutip pada nilainya dan yang lain tidak, sehingga
8080dan"8080"dibandingkan sebagai sama. - Baca Ringkasan untuk jumlahnya, Diff struktural untuk daftar perubahan per path, dan Unified diff untuk tampilan tingkat baris.
Output diperbarui otomatis saat Anda mengetik.
Bagaimana diff struktural menentukan apa yang berubah?
Kedua file di-parse, lalu kedua nilai hasilnya dijelajahi bersamaan. Di setiap mapping, alat ini melaporkan kunci yang hanya ada di satu sisi (ditambahkan atau dihapus) dan berekursi ke kunci yang ada di kedua sisi; di setiap sequence, item dibandingkan satu per satu; di setiap skalar, nilainya dibandingkan. Setiap entri diawali + (ditambahkan), - (dihapus) atau ~ (diubah) beserta path bertitik seperti spec.template.spec.containers[0].image, sehingga Anda bisa langsung melompat ke baris yang penting dalam manifest setinggi 400 baris.
Mengapa diff "struktural" lebih baik daripada diff teks biasa?
Karena sebagian besar perbedaan teks YAML bukan perbedaan sungguhan. ports: [80, 443] dan sequence block dua baris adalah data yang sama; name: app dan "name": app juga sama; demikian pula file yang sama yang indentasinya diubah dari 4 spasi menjadi 2. Diff baris melaporkan semuanya. Alat ini tidak melaporkan satupun — hanya perubahan yang benar-benar akan sampai ke apa pun yang mengonsumsi file tersebut.
Lalu mengapa ada juga unified diff?
Karena tampilan tingkat barislah yang Anda tempelkan ke patch atau code review. Agar tetap berguna, kedua file terlebih dahulu diserialisasi ulang dari bentuk hasil parse dengan indentasi tetap 2 spasi, dan teks ternormalisasi itulah yang di-diff — sehingga patch menunjukkan suntingan nyata, bukan derau format.
Apakah mendukung file multi-dokumen?
Ya. Stream yang dipisah --- dibandingkan dokumen demi dokumen secara berurutan, dan path diberi awalan doc[2].… agar Anda tahu perbedaan itu milik dokumen mana. Dokumen ekstra di salah satu sisi dilaporkan sebagai ditambahkan atau dihapus.
Bagaimana dengan komentar?
Komentar tidak dibandingkan. Komentar tidak membawa makna bagi apa pun yang membaca datanya, dan kedua tampilan dihitung dari dokumen hasil parse, yang tidak menyimpan komentar tersebut.
Apakah data saya privat?
Sepenuhnya. Parsing dan perbandingan terjadi sepenuhnya di browser Anda — tidak ada file yang diunggah, dicatat, atau disimpan, dan itu penting saat YAML yang Anda bandingkan adalah manifest produksi.
Butuh yang selain diff YAML?
Untuk membandingkan JSON, gunakan alat JSON Compare; untuk XML, gunakan XML Diff Comparator. Jika salah satu file Anda gagal di-parse, Validator YAML akan menunjukkan letak kesalahan sintaksnya.
Use it from code
From 3 credits per callREST API
curl -X POST https://api.iotools.cloud/v1/tool/yaml-diff-comparator \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"yamlA": "apiVersion: apps/v1\nkind: Deployment\nmetadata:\n …",
"yamlB": "apiVersion: apps/v1\nkind: Deployment\nmetadata:\n …",
"seqOrder": "position",
"looseScalars": ""
}'Swap in your own key from your account. The tool's fields are the body — no wrapper.
Ask an AI agent
Use the IOTools `yaml-diff-comparator` tool (YAML Diff Comparator) on this input:
YOUR_INPUT_HEREPaste this at any agent connected to the IOTools MCP server, then add your input.