Saat saya menjalankan git add -p
, apakah ada cara bagi git untuk memilih file yang baru dibuat sebagai hunks untuk dipilih ??
Jadi jika saya membuat file baru bernama foo.java
, lalu menjalankan git add -p, git tidak akan mengizinkan saya memilih konten file tersebut untuk ditambahkan ke indeks.
git add -N
dilakukannya, itu hanya menambahkan file tertentu yang tidak terlacak ke indeks, tetapi tanpa konten.Ketika saya mencoba
git add -p someNewFile.txt
file baru (file yang tidak terlacak), git hanya akan menampilkanNo changes.
dan berhenti. Saya harus memberi tahu git bahwa saya bermaksud melacak file baru terlebih dahulu.Namun, karena file tersebut tidak terlacak, itu akan muncul sebagai satu bongkahan raksasa yang tidak dapat dipisahkan (karena semuanya baru!). Jadi, kemudian saya perlu mengedit bingkah menjadi potongan-potongan yang lebih kecil. Jika Anda tidak terbiasa dengan itu, lihat referensi ini untuk memulai.
Perbarui - Info pengeditan barang Saya ingin memperbarui ini jika referensi di atas hilang. Karena file baru tidak terlacak,
git add -p
akan menampilkan setiap baris dalam file sebagai baris baru dalam satu potongan. Ini kemudian akan menanyakan Anda apa yang ingin Anda lakukan dengan cowok itu, memberi Anda prompt berikut:Stage this hunk [y,n,q,a,d,/,e,?]?
Dengan asumsi bahwa Anda tidak ingin mengkomit seluruh bingkah (dan dengan demikian, seluruh file; karena saya tidak yakin mengapa Anda ingin menggunakan
git add -p
dalam kasus itu?), Anda akan ingin menentukan opsie
untuk memberi tahu git bahwa Anda ingin mengedit cowok itu.Setelah Anda memberi tahu git bahwa Anda ingin mengedit hunk, Anda harus ditempatkan di editor pilihan Anda sehingga Anda dapat membuat perubahan. Semua baris harus diawali dengan a
+
dan git memiliki beberapa komentar penjelasan (diawali dengan a#
) di akhir file. Cukup hapus baris yang tidak Anda inginkan di komit awal file Anda. Kemudian simpan dan keluar dari editor.Penjelasan Git tentang opsi git's hunk:
sumber
git add -N someNewFile.txt
diikuti olehgit add -p
git add -p
benar-benar tentang menambahkan perubahan ke file yang sudah dilacak.Perintah untuk memilih file secara interaktif untuk ditambahkan adalah
git add -i
. Sebagai contoh:(Perintah sebenarnya memiliki warna yang tidak bisa saya potong-dan-tempel di sini, jadi lebih bagus daripada yang terlihat)
Sebenarnya, perintah p atch dari
git add -i
melakukan hal yang samagit add -p
, jadi yang kedua adalah bagian dari yang pertama (walaupun saya akui saya mencintaiadd -p
dan membenciadd -i
diri saya sendiri!).sumber
No changes.
file baru. OP bertanya bagaimana cara menambahkan bongkahan dari file baru, bukan seluruh file. Saya yakin--intent-to-add
masih dibutuhkan di sini.add -p
saja tidak akan berhasil, tetapi jawaban ini menyarankanadd -i
, mana yang berhasil.git add -i
. Namun, Anda dapat melakukan hal yang sama secara non-interaktifgit add -N
.Ada juga pendekatan yang sangat mirip dengan menggunakan
--cached
bendera ...1) Ubah perubahan tidak bertahap menjadi bertahap, sama seperti file yang Anda tambahkan.
2) Lihat perbedaannya (catatan: Anda dapat menyertakan hasil edit dan file baru).
3) Buat tambalan.
sumber
git add -p
adalah tidak menambahkan segalanya, tetapi mari saya pilih dan pilih apa yang ingin saya tambahkan. Solusi ini akan menambahkan segalanya secara membabi buta.