Jawaban:
Solusi yang mungkin dari git config
:
git config --global mergetool.keepBackup false
Setelah melakukan penggabungan, file asli dengan penanda konflik dapat disimpan sebagai file dengan
.orig
ekstensi.
Jika variabel ini diatur kefalse
maka file ini tidak disimpan.
Default ketrue
(yaitu menyimpan file cadangan).
Alternatifnya adalah tidak menambah atau mengabaikan file-file itu, seperti yang disarankan dalam artikel gitguru ini ,
git mergetool
menyimpan versi gabungan-konflik dari file dengan.orig
akhiran " ".
Pastikan untuk menghapusnya sebelum menambahkan dan melakukan penggabungan atau menambahkan*.orig
ke Anda.gitignore
.
Berik menyarankan dalam komentar untuk menggunakan:
find . -name \*.orig
find . -name \*.orig -delete
Charles Bailey menyarankan dalam jawabannya untuk mewaspadai pengaturan internal alat berbeda yang juga dapat menghasilkan file cadangan tersebut, tidak peduli apa pengaturan git.
.bak
seperti yang disebutkan dalam manualnya ).Jadi, Anda perlu mengatur ulang pengaturan itu juga.
git config --global mergetool.keepBackup false
, Diselesaikan untuk P4Merge pada Mavericks 10.9.2. Terima kasih :)
keepBackup = false
bawah [mergetool]
, bukan bagian bawah [mergetool "BeyondCompare4"]
atau alat penggabungan visual apa pun yang telah Anda konfigurasikan.
Anda harus sedikit berhati-hati dengan menggunakan kdiff3
karena sementara git mergetool
dapat dikonfigurasi untuk menyimpan .orig
file selama penggabungan, perilaku default untuk kdiff3
adalah juga menyimpan .orig
file cadangan secara terpisah git mergetool
.
Anda harus memastikan mergetool
cadangan tidak aktif:
git config --global mergetool.keepBackup false
dan juga bahwa pengaturan kdiff3 diatur untuk tidak membuat cadangan:
Configure/Options => Directory Merge => Backup Files (*.orig)
Configure/Options => Directory Merge => Backup Files (*.orig)
benar-benar membantu menyingkirkan semua io-slave, protokol yang tidak dikenal «aneh», dan tidak bisa membuat kesalahan .orig. terima kasih
git config --global mergetool.keepBackup false
harus diatur?
Opsi untuk menyimpan file .orig dapat dinonaktifkan dengan mengkonfigurasi KDiff3
Saya menggunakan ini untuk membersihkan semua file yang diakhiri dengan ".orig":
function git-clean-orig {
git status -su | grep -e"\.orig$" | cut -f2 -d" " | xargs rm -r
}
Jika Anda adalah kucing yang ketakutan :) Anda bisa membiarkan bagian terakhir hanya untuk daftar mereka (atau tinggalkan -r
jika Anda ingin menyetujui setiap penghapusan):
function git-show-orig {
git status -su | grep -e"\.orig$" | cut -f2 -d" "
}
Selain jawaban yang benar yang ditawarkan sebagai solusi jangka panjang, Anda dapat menggunakan git untuk menghapus semua file yang tidak perlu satu kali untuk Anda dengan git clean -f
perintah tersebut tetapi gunakan git clean --dry-run
terlebih dahulu untuk memastikan tidak ada yang tidak diinginkan akan terjadi.
Ini memiliki manfaat menggunakan fungsionalitas built-in Git yang teruji atas skrip khusus untuk OS / shell Anda untuk menghapus file.
Windows:
Win/Users/HOME/.gitconfig
Kumpulan filemergetool.keepTemporaries=false
git/libexec/git-core/git-mergetool
, dalam fungsi cleanup_temp_files()
tambah rm -rf -- "$MERGED.orig"
dalam blok lain.