cari

Rumah  >  Soal Jawab  >  teks badan

Perbezaan antara git commit -m dan git commit -am

Sila beritahu saya perbezaan antara git commit -m dan git commit -am

为情所困为情所困2792 hari yang lalu1083

membalas semua(3)saya akan balas

  • 迷茫

    迷茫2017-05-02 09:38:32

    Apabila pengubahsuaian telah ditambahkan pada git add <change file> melalui stage, mesej git commit -m "<message>" boleh ditambah melalui stage untuk semua perubahan yang telah dimasukkan ke dalam commit. Apa yang ada dalam stage? Lihat di bawah

    Jika fail anda telah diserahkan sebelum ini, tetapi kali ini perubahan belum dibuat stage, seperti berikut:

    Anda boleh menggunakan git commit -am "<message>" terus untuk menambah semua pengubahsuaian tetapi bukan stage perubahan pada stage dan merekodkan maklumat commit. (Pada tahap tertentu, ia bersamaan dengan gabungan git add dan git commit -m, dengan syarat fail yang diubah suai sudah tracked)

    balas
    0
  • 给我你的怀抱

    给我你的怀抱2017-05-02 09:38:32

    git commit -am "str"
    #等同于
    git commit -a -m "str"

    Jom jalankan

    man git commit 

    untuk mendapatkan maksud parameter a dan anda akan tahu perbezaannya.

    PILIHAN
    -a, --semua
    Beritahu arahan untuk secara automatik mementaskan fail yang telah diubah suai dan >dipadamkan, tetapi fail baharu yang anda tidak beritahu Git tidak terjejas.

    bermaksud

    Secara automatik meletakkan semua fail yang diubah suai dan dipadamkan pada timbunan, tetapi fail yang belum anda tambahkan tidak akan terjejas.

    Kembangkan

    Biasanya apabila kita menyerahkan git adalah

    git add .
    git commit -m "some str"
    git push

    Ini adalah tiga langkah besar, tetapi sebenarnya, anda hanya memerlukan dua arahan, melainkan terdapat fail baharu untuk ditambahkan.

    git commit -am "some str"
    git push

    balas
    0
  • 伊谢尔伦

    伊谢尔伦2017-05-02 09:38:32

    Diterangkan secara literal, git commit -m digunakan untuk menyerahkan fail dalam kawasan pementasan git commit -am digunakan untuk menyerahkan fail yang dijejaki

    Untuk memahami perbezaannya, anda mesti terlebih dahulu memahami kitaran perubahan status fail git, seperti yang ditunjukkan dalam rajah di bawah

    Semua fail di bawah direktori kerja berada dalam dua keadaan ini: dijejaki atau tidak dijejaki. Fail yang dijejaki merujuk kepada fail yang telah disertakan dalam pengurusan kawalan versi Mereka direkodkan dalam petikan terakhir Selepas bekerja untuk tempoh masa, statusnya mungkin tidak dikemas kini, diubah suai atau diletakkan di kawasan pementasan.

    Berikut ialah contoh

    Apabila fail seperti 'a.txt' ditambahkan pada folder projek, fail tersebut berada dalam keadaan tidak dijejaki. Fail dalam status tidak dijejaki tidak boleh diserahkan


    Seterusnya, gunakan git add a.txt untuk menjadikannya dijejaki

    Pada masa ini, jika anda menggunakan git commit -m 'add a.txt', anda boleh menyerahkannya dengan lancar

    Tetapi, apakah perbezaan antara git commit -m dan git commit -am? Ia bergantung pada pemprosesan selepas mengubah suai fail a.txt

    Seterusnya, tambah kandungan 'a' pada a.txt

    Fail a.txt dijejaki tetapi tidak berperingkat. Pada masa ini, jika anda menggunakan git commit -m, anda tidak boleh menyerahkan versi terbaharu a.txt Apa yang diserahkan hanyalah versi lama a.txt dengan kandungan kosong pada permulaan

    Untuk menyerahkan versi baharu a.txt, iaitu a.txt dengan kandungan 'a', anda perlu menggunakan git add a.txt untuk meletakkan versi baharu a.txt ke dalam kawasan storan sementara berperingkat , dan kemudian gunakan git commit -m untuk commit

    Jika anda menggunakan git commit -am, anda boleh meninggalkan langkah git add a.txt, kerana git commit -am boleh menyerahkan fail yang dijejaki, dan a.txt telah pun dijejaki dari awal

    Untuk meringkaskan, kunci kepada perbezaan antara menggunakan kedua-dua arahan ini ialah arahan git add

    Arahan git add ialah perintah berbilang fungsi Bergantung pada status fail sasaran, kesan arahan ini juga berbeza: anda boleh menggunakannya untuk mula menjejaki fail baharu atau meletakkan fail yang dijejaki ke dalam storan sementara. kawasan, dan ia juga boleh digunakan untuk menggabungkan Tandakan fail bercanggah sebagai diselesaikan, dsb.

    Kita perlu menggunakan arahan git add untuk menjejak fail baharu, tetapi jika anda menggunakan git commit -am, anda boleh meninggalkan fungsi menggunakan arahan git add untuk meletakkan fail yang dijejaki ke dalam kawasan pementasan

    balas
    0
  • Batalbalas