Menggunakan alat gabungan eksternal tidak berfungsi pada SourceTree

5

saya sedang berlari OS X.10, Xcode 7 dan SourceTree 2.

Ketika saya memilih file yang konflik dan Launch an external merge tool, ada jendela yang muncul sangat singkat ... lalu tidak ada yang terjadi .

Saya mencoba (lihat halaman bantuan ini ) sudo ln -s /Developer/usr/bin/opendiff /usr/bin/opendiff tetapi tidak berhasil (saya mendapat pesan ln: /usr/bin/opendiff: File exists ).

Apa yang harus saya lakukan?

PS:

Berikut adalah gambar jendela yang muncul sebentar.

enter image description here

PPS:

Berikut adalah preferensi SourceTree:

enter image description here

Colas
sumber
Perhatikan bahwa halaman bantuan mengatakan itu untuk Xcode 4.2 dan ditulis beberapa tahun yang lalu - versi Xcode apa yang Anda miliki? Juga apa pun yang mengatakan hal chnage di / usr / bin adalah sumber yang dicurigai dan sekarang tidak akan berfungsi di El Capitan. Juga kesalahannya adalah karena Anda sudah memiliki / usr / bin / opendiff sehingga seluruh perubahan tidak ada gunanya
Mark
Sudahkah Anda menjalankan Xcode dan menyetujui persyaratan lisensi
Mark
Saya menjalankan Xcode 7 memang! (tapi apakah ini benar-benar membuat perbedaan?)
Colas
Sudahkah Anda menginstal alat baris perintah? Apa yang ditampilkan / usr / bin / opendiff saat dijalankan di terminal
Mark
2015-11-04 17:11:32.360 opendiff[10848:132187] too few arguments 2015-11-04 17:11:32.365 opendiff[10848:132187] usage: opendiff file1 file2 [-ancestor ancestorFile] [-merge mergeFile]
Colas

Jawaban:

2

Anggap Anda menggunakan SourceTree versi terbaru (Versi 2.0.5.5 (2.0.5.5))

Coba tambahkan berikut ini secara manual ke .gitconfig Anda (atau verifikasi bahwa SourceTree telah meletakkan baris yang tepat ini)

[mergetool "sourcetree"]
    cmd = /Applications/SourceTree.app/Contents/Resources/opendiff-w.sh \"$LOCAL\" \"$REMOTE\" -ancestor \"$BASE\" -merge \"$MERGED\"
    trustExitCode = true
sdayal
sumber
0

Masalah saya adalah bahwa saya menjalankan Xcode versi sebelumnya dan saya belum mengatur alat baris perintah.

Pilih alat di preferensi Xcode - & gt; lokasi:

enter image description here

Kemudian jalankan perintah ini di terminal untuk memverifikasi:

git config --global -l

Perintah git akan mencetak path untuk alat diff, di antara info konfigurasi lainnya. Jika tidak dikonfigurasi, itu akan menampilkan kesalahan dengan sesuatu di sepanjang baris berikut ini:

xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools),
PostCodeism
sumber