Saya mencoba menggabungkan file di baris perintah menggunakan Git, ketika pesan kesalahan muncul yang memberi tahu saya bahwa penggabungan dibatalkan.
Saya pikir itu akhirnya, tetapi kemudian saya menyadari ada gitmark di file saya. Seperti:
start =
expression
validchar =
[0-9a-zA-Z_?!+\-=@#$%^&*/.]
integer =
<<<<<<< HEAD
digits:[0-9]+
{ return digits.join(""); }
=======
sign:"-"* digits:[0-9]+
{ return sign + digits.join(""); }
>>>>>>> gh-pages
File telah diedit bukan oleh saya dan menunjukkan baris yang disisipkan dengan:
- KEPALA setelah kurang dari tanda (
<<<<<<< HEAD
) - baris kode yang diubah
- serangkaian tanda sama dengan (
=======
) - versi baru kode
- baris lain dimulai dengan tanda lebih besar dari dan nama cabang (
>>>>>>> gh-pages
)
Yang lebih buruk adalah konten file tidak lagi teratur. Adakah yang tahu bagaimana saya mengembalikan file-file itu ke normal, dan perubahan yang saya buat di gh-branch digabungkan ke dalam cabang master?
sumber
gh-pages
versi, jadi Anda hanya akan menghapus barang dari<<<<<<
to======
dan juga menghapus satu>>>>>>
baris, meninggalkan dua baris kode aktual di antara=======
dan>>>>>>
.Mulailah dengan 'status git' untuk melihat apa yang Anda miliki. Jika Anda membatalkan penggabungan (atau penggabungan dibatalkan) dan Anda memiliki file yang konflik di direktori kerja, maka ada yang tidak beres. Status Git akan memberi tahu Anda di mana Anda berada. Setelah itu, Anda memiliki sejumlah opsi. Anda harus menyelesaikan komit penggabungan baik dengan tangan, yang bisa jadi menantang, atau menggunakan alat sebagai:
Alat penggabung akan berfungsi jika file Anda terdaftar sebagai membutuhkan penggabungan.
Anda juga dapat melakukan salah satu dari:
Anda dapat melihat versi yang berbeda menggunakan sintaks: 1: namafile. Lihat di sini untuk penjelasannya. Tetapi semua hal di atas mengasumsikan bahwa 'status git' menunjukkan file yang membutuhkan penggabungan.
Terakhir, Anda selalu memiliki opsi untuk:
sumber
git status
melihat apa yang Anda punya": di beberapa kalangan mungkin menyalahkan Git atas kompleksitas imajinernya, tetapi sebenarnya membaca dengan cermat keluarangit status
sudah cukup untuk memahami apa yang harus dilakukan selanjutnya dalam situasi yang paling umum. Oleh karena itu, sungguh: jika terjadi kesalahan, berhenti, bacagit status
, pikirkan.Semua jawaban benar tetapi jika Anda ingin menghapus otomatis semua tanda konflik & ingin mengubah file secara otomatis untuk menyimpan HEAD, maka Anda dapat membuat skrip bash Anda sendiri seperti: -
Contoh Script:
# vim /usr/sbin/solve.git
(Tambahkan Mengikuti)
# chmod 755 /usr/sbin/solve.git
& jalankan saja di repo / jalur GIT Anda untuk menyelesaikan:
$ cd <path_to_repo>
$ solve.git
Perhatian: - Ekstensi file yang disebutkan di atas adalah php, css, js, html, svg & txt.
sumber
Di Atom saya memiliki masalah bahwa beberapa file tidak menyimpan konflik gabungan yang telah diselesaikan ke drive, jadi saya harus mengklik "simpan" secara manual. Butuh waktu cukup lama bagiku untuk mencari tahu.
sumber
Saya datang dari pertanyaan ini . Dan saya menginginkan beberapa metode otomatis untuk menggabungkan setengah file yang digabungkan, daripada mengedit file secara manual ( seperti yang disarankan dalam jawaban lain, yang saya tidak terlalu nyaman melakukannya ). Jadi, inilah yang akhirnya saya lakukan melalui netbeans, tetapi juga dapat dilakukan melalui baris perintah.
Sekarang, ingatlah, ini hanya berfungsi jika segera setelah itu
merge->add->commit
, Anda menyadari bahwa Anda mengacau, dan ingin mengulangi prosesnya.LANGKAH 1: Reset ke komit sebelumnya.
LANGKAH 2: Coba Menggabungkan kembali cabang
Pada titik ini Anda akan diminta dengan jendela penggabungan jika Anda menggunakan GUI. dan Anda dapat melanjutkan seperti biasa.
sumber