Saya punya dua proyek. Salah satunya adalah proyek "resmi" dan yang kedua adalah modifikasi ringan (beberapa file ditambahkan). Saya membuat cabang baru dan saya menaruh file baru kepada mereka. Tetapi dalam pengembangan beberapa file umum untuk kedua cabang diubah.
Bagaimana saya hanya melakukan file-file ini?
git
git-branch
git-commit
Nips
sumber
sumber
Jawaban:
Saya kira Anda ingin mengkomit perubahan ke satu cabang dan kemudian membuat perubahan itu terlihat di cabang lain. Di git Anda seharusnya tidak memiliki perubahan di atas KEPALA saat mengganti cabang.
Anda hanya mengikat file yang diubah dengan:
Atau jika Anda yakin memiliki area pementasan yang bersih, Anda dapat melakukannya
Jika Anda ingin membuat komit tersedia di kedua cabang yang Anda lakukan
sumber
git commit [some files]
, yang menyiratkan--only
sakelar) harus digunakan. Contoh pertama (git add [some files]
diikuti olehgit commit
) juga akan melakukan perubahan lain yang telah dipentaskan.Dapatkan daftar file yang ingin Anda komit
Tambahkan file ke pementasan
Periksa untuk melihat apa yang Anda lakukan
Komit file dengan pesan komit
Jika Anda secara tidak sengaja melakukan file yang salah
Jika Anda ingin menghapus stage file dan mulai lagi dari awal
sumber
Anda dapat melakukan beberapa file yang diperbarui, seperti ini:
sumber
Beberapa dari ini tampaknya "tidak lengkap"
Sekelompok orang TIDAK akan tahu jika mereka harus menggunakan tanda kutip, dll.
Tambahkan 1 file spesifik yang menunjukkan jalur lokasi juga
Komit (ingat, komit hanya lokal, tidak memengaruhi sistem lain)
Tekan untuk repo jarak jauh
Jawaban lain menunjukkan simpanan, dll. Yang terkadang ingin Anda lakukan
sumber
Jika Anda sudah mementaskan file, cukup hapus stage mereka:
Kemudian tambahkan sedikit demi sedikit kembali.
sumber
Misalkan Anda membuat perubahan pada banyak file, seperti:
Tetapi Anda hanya ingin melakukan perubahan File1 dan File3.
Ada dua cara untuk melakukan ini:
1.Stage hanya dua file ini, menggunakan:
lalu, komit
lalu dorong,
2.Komit langsung
lalu dorong,
Sebenarnya metode pertama berguna jika kita memodifikasi file secara teratur dan mementaskannya -> Proyek Besar, umumnya proyek Langsung.
Tetapi jika kita memodifikasi file dan tidak mementaskannya maka kita dapat melakukan komit langsung -> Proyek kecil
sumber
--only
. Kemudian, itu akan menjadi perintah yang sama dengangit commit --only file1 --only file3 -m "my message"
atau menggunakan jalan pintas sebagaigit commit -o file1 -o file3 -m "my message"
Referensi: git-scm.com/docs/git-commitIni adalah pendekatan sederhana jika Anda tidak memiliki banyak perubahan kode:
Kemudian jika Anda ingin kode yang Anda hapus (bit yang tidak Anda komit) di komit terpisah atau cabang lain, maka saat masih di cabang ini lakukan:
Dengan langkah 5 karena Anda sudah menerapkan simpanan dan mengkomit kode yang Anda inginkan di langkah 4, perbedaan dan tidak terlacak dalam simpanan yang baru diterapkan hanyalah kode yang Anda hapus di langkah 3 sebelum Anda berkomitmen pada langkah 4.
Karena langkah 6 adalah tumpukan kode yang tidak Anda [ingin] komit, karena Anda mungkin tidak benar-benar ingin kehilangan perubahan itu, bukan? Jadi simpanan baru dari langkah 6 sekarang dapat dilakukan untuk cabang ini atau cabang lain dengan melakukan simpanan git berlaku pada cabang yang benar dan melakukan.
Jelas ini mengandaikan Anda melakukan langkah-langkah dalam satu aliran, jika Anda menyembunyikan di titik lain dalam langkah-langkah ini Anda harus mencatat ref penyimpanan untuk setiap langkah di atas (bukan hanya simpanan dasar dan menerapkan simpanan terbaru).
sumber