Ketika saya melakukan svn status .
, saya mendapatkan ini:
! C auto-complete-config.elc
> local edit, incoming delete upon update
! + C auto-complete.elc
> local edit, incoming delete upon update
! + C popup.elc
> local edit, incoming delete upon update
! + C fuzzy.elc
> local edit, incoming delete upon update
pada dasarnya, file-file ini tidak boleh berada di repositori. Pengembang telah menghapusnya. Kemudian, saya pikir saya melakukan kesalahan svn rm ...
setelah fakta (seharusnya dilakukan svn update .
sebagai gantinya).
Jadi sekarang, ketika saya melakukannya svn status .
, saya mendapatkan pesan konflik pohon ini.
Saya menemukan doc di sini tetapi tidak yakin bagaimana "menggabungkan" sesuai dengan doc.
Bagaimana cara menyingkirkannya?
Saya pikir copy pekerjaan saya sinkron dengan repositori. Tidak tahu mengapa pesan ini muncul. File-file ini harus dihapus dan dihapus sejauh yang saya tahu di mana-mana. Saya mencoba svn update .
dan svn revert .
tetapi saya masih mendapatkan pesan ini ketika saya melakukannya svn status .
.
"local missing or deleted or moved away, incoming dir edit upon merge"
Jawaban:
Versi pendek:
Jika konfliknya adalah tentang direktori, bukan file, maka ganti
touch
denganmkdir
danrm
denganrm -r
.Catatan: prosedur yang sama juga berfungsi untuk situasi berikut:
Versi panjang:
Ini terjadi ketika Anda mengedit file sementara orang lain menghapus file dan melakukan terlebih dahulu. Sebagai warga negara yang baik, Anda melakukan pembaruan sebelum komit. Sekarang Anda memiliki konflik. Menyadari bahwa menghapus file adalah hal yang tepat untuk Anda hapus file dari copy pekerjaan Anda. Alih-alih menjadi konten svn sekarang mengeluh bahwa file-file lokal hilang dan bahwa ada pembaruan yang saling bertentangan yang akhirnya ingin melihat file dihapus. Kerja bagus svn.
Seharusnya
svn resolve
tidak bekerja, untuk alasan apa pun, Anda dapat melakukan hal berikut:Situasi awal: File lokal hilang, pembaruan saling bertentangan.
Buat kembali file yang bertentangan:
Jika konfliknya adalah tentang direktori maka ganti
touch
denganmkdir
.Situasi baru: File lokal yang akan ditambahkan ke repositori (ya benar, svn, apa pun yang Anda katakan), pembaruan masih saling bertentangan.
Kembalikan file ke keadaan svn menyukainya (itu berarti dihapus):
Situasi baru: File lokal tidak dikenal svn, perbarui tidak lagi bertentangan.
Sekarang kita dapat menghapus file:
Jika konfliknya adalah tentang direktori maka ganti
rm
denganrm -r
.svn tidak lagi mengeluh:
Selesai
sumber
svn st | grep ! | cut -f 7 -d' ' | xargs touch
sebagai satu liner untuk menyentuh semua file yang hilangrm -r foo bar
(ataurmdir foo bar
di Windows atau jika Anda suka Windows).Cobalah untuk menyelesaikan konflik menggunakan
sumber
Saya baru saja mendapat masalah yang sama dan saya menemukan itu
memecahkan masalah.
tekad svn tidak bekerja untuk saya:
sumber
Jika Anda belum membuat perubahan di dalam direktori yang konflik, Anda juga bisa
rm -rf conflicts_in_here/
dan kemudiansvn up
. Setidaknya ini berhasil bagi saya.sumber
Anda dapat memaksa untuk mengembalikan direktori lokal Anda ke svn.
sumber
A + C path/to/dir
dan> local dir edit, incoming dir delete or move upon update
Jadi Anda bisa mengembalikan file yang sudah Anda hapus tapi ingat, Jika Anda mengerjakan semua jenis proyek dengan file proyek yang disetel (seperti iOS), mengembalikan file akan menambahkannya ke struktur folder sistem Anda tetapi tidak pada struktur file proyek Anda. langkah-langkah tambahan mungkin diperlukan jika Anda berada dalam kasus ini
sumber
Masalah ini sering terjadi ketika kami mencoba untuk menggabungkan perubahan cabang lain dari direktori yang salah.
Ex:
Konflik yang muncul saat eksekusi adalah:
Dan ketika Anda memilih q untuk keluar dari resolusi , Anda mendapatkan status sebagai:
yang jelas berarti bahwa penggabungan tersebut berisi perubahan yang terkait dengan
Branch1_SubDir
danBranch1_AnotherSubDir
, dan folder ini tidak dapat ditemukan di dalamBranch1_SubDir
(jelas direktori tidak bisa berada di dalam dirinya sendiri).Cara menghindari masalah ini di tempat pertama:
The memperbaiki sederhana untuk masalah ini yang bekerja untuk saya:
sumber