Ini adalah perintah yang dapat dijalankan di penyedia hosting gratis OnWorks menggunakan salah satu dari beberapa workstation online gratis kami seperti Ubuntu Online, Fedora Online, emulator online Windows atau emulator online MAC OS
PROGRAM:
NAMA
perbedaan aegis - temukan perbedaan antara perubahan dan garis dasar
RINGKASAN
Aegis -Perbedaan [ nama file... ] [ Option... ]
Aegis -Perbedaan -Daftar [ Option... ]
Aegis -Perbedaan -Membantu
DESKRIPSI
Aegis -Perbedaan perintah digunakan untuk menghasilkan daftar perbedaan antara sumber
file di direktori pengembangan dan baseline. Tujuannya adalah untuk mengaktifkan
pengulas untuk menemukan setiap pengeditan yang dilakukan pada file sumber. Perbedaan
daftar akan ditempatkan ke dalam file yang dinamai untuk file sumber tetapi dengan tambahan
akhiran ",D".
Perintah yang digunakan untuk melakukan perbedaan ditentukan dalam diff_command bidang
file konfigurasi proyek (lihat aepconf(5) untuk informasi lebih lanjut).
Dimungkinkan untuk mengonfigurasi proyek untuk menghilangkan langkah diff sebagai tidak perlu, dengan
pengaturan berikut:
diff_command = "keluar 0";
Ini menonaktifkan semua pembuatan, pemeriksaan, dan validasi file perbedaan untuk setiap perubahan
sumber data. Fungsi gabungan dari aediff(1) perintah tidak terpengaruh oleh ini
pengaturan.
Harap dicatat bahwa batasan_konten_sejarah bidang file konfigurasi proyek
tidak tidak berlaku untuk diff_command lapangan.
Jika tidak ada file yang diberi nama pada baris perintah, semua file dalam perubahan akan dibedakan.
Anda dapat memberi nama direktori pada baris perintah, dan semua file dalam perubahan itu
pohon direktori akan berbeda.
File Nama Interpretasi
Program aegis akan mencoba menentukan nama file proyek dari nama file
diberikan pada baris perintah. Semua nama file disimpan dalam proyek aegis sebagai relatif
ke akar pohon direktori dasar. Direktori pengembangan dan
direktori integrasi adalah bayangan dari direktori dasar ini, dan nama-nama relatif ini
terapkan di sini juga. File yang dinamai pada baris perintah pertama kali dikonversi ke jalur absolut
jika diperlukan. Mereka kemudian dibandingkan dengan jalur dasar, direktori pengembangan
jalur, dan jalur direktori integrasi, untuk menentukan nama relatif dasar. Dia
kesalahan jika file bernama berada di luar salah satu pohon direktori ini.
-BAse_RElatif opsi dapat digunakan untuk menyebabkan nama file relatif ditafsirkan sebagai
relatif terhadap jalur dasar; nama file absolut masih akan dibandingkan dengan berbagai
jalur untuk menentukan nama relatif dasar.
relatif_nama_file_preferensi dalam file konfigurasi pengguna dapat digunakan untuk memodifikasi
perilaku default ini. Lihat aeuconf(5) untuk informasi lebih lanjut.
Pemberitahuan
Tindakan perintah dikendalikan oleh diff_command dan gabung_perintah bidang
proyek config mengajukan. Lihat aepconf(5) untuk informasi lebih lanjut.
THE DASAR LOCK
Kunci dasar digunakan untuk memastikan bahwa garis dasar tetap dalam keadaan yang konsisten untuk
durasi perintah yang perlu membaca isi file di baseline.
Perintah-perintah yang memerlukan garis dasar untuk konsisten (ini termasuk: a dan b(1)
aecp(1) dan aed(1) perintah) ambil garis dasar Baca baca kunci. Ini adalah kunci non-eksklusif, jadi
perkembangan perubahan secara bersamaan tidak terhalang.
Perintah yang mengubah garis dasar, aeipass(1), mengambil garis dasar menulis kunci. Ini
adalah kunci eksklusif, memaksa aeipass(1) untuk memblokir sampai tidak ada pembacaan baseline yang aktif
kunci.
Ada kemungkinan bahwa salah satu perintah pengembangan di atas akan diblokir hingga proses berlangsung
Aegis -Integrasi_PASS selesai. Ini biasanya berdurasi pendek saat proyek
sejarah diperbarui. Penundaan sangat penting agar perintah ini menerima sinyal yang konsisten
pandangan garis dasar. Tidak ada perintah integrasi lain yang akan menyebabkan perkembangan di atas
perintah untuk memblokir.
Saat fungsi cabang aegis sedang digunakan, kunci baca (non-eksklusif) diambil di
baseline cabang dan juga setiap baseline "induk". Namun, tulisan dasar
kunci (eksklusif) hanya diambil pada baseline cabang; garis dasar "induk" hanya
baca (non-eksklusif) terkunci.
File Tindakan Pengaturan
Ketika perintah ini dijalankan, pertama kali memeriksa file perubahan terhadap file proyek. Jika
ada inkonsistensi, tindakan file akan disesuaikan sebagai berikut:
buat Jika file sedang dibuat, tetapi set perubahan lain terintegrasi yang juga
membuat file, tindakan file di set perubahan yang masih dikembangkan adalah
disesuaikan dengan "modifikasi".
memodifikasi Jika file sedang dimodifikasi, tetapi set perubahan lain terintegrasi yang menghapus
file, tindakan file di set perubahan yang masih dikembangkan adalah
disesuaikan dengan "membuat".
hapus Jika file sedang dihapus, tetapi set perubahan lain terintegrasi yang menghapus
file, file akan dijatuhkan dari set perubahan yang masih dikembangkan.
KONFLIK RESOLUSI
Jika versi file yang di ubah tidak sama dengan versi file di
baseline, sudah ketinggalan zaman; beberapa perubahan lain telah mengubah file saat perubahan ini
sedang dikembangkan.
Ketika perbedaan diminta untuk file kedaluwarsa, penggabungan dilakukan antara
nenek moyang yang sama, versi di baseline, dan versi dalam pengembangan
direktori. Perintah yang digunakan untuk melakukan penggabungan ditentukan oleh gabung_perintah bidang
dari file konfigurasi proyek (lihat aepconf(5) untuk informasi lebih lanjut).
Harap dicatat bahwa batasan_konten_sejarah bidang file konfigurasi proyek
tidak tidak berlaku untuk gabung_perintah lapangan.
Setelah penggabungan dilakukan, versi file akan diubah menjadi versi saat ini
versi, menandai file sebagai yang terbaru, dan build baru akan diperlukan.
File asli di direktori pengembangan Anda disimpan dengan akhiran ",B" (B untuk
cadangan). File sumber berisi hasil penggabungan. Anda harus mengedit sumbernya
file, untuk memastikan penggabungan otomatis telah menghasilkan hasil yang masuk akal.
Proses penggabungan ini bekerja hampir sepanjang waktu. Biasanya dua perubahan menjadi dua secara logis terpisah
area fungsionalitas akan mengubah dua bagian yang terpisah secara logis dari file apa pun yang mungkin mereka miliki
bersama. Ada kasus patologis di mana proses penggabungan ini sangat spektakuler
tidak berguna, tetapi ini sangat jarang dalam praktik.
Jika Anda tidak ingin hasil penggabungan otomatis, cukup gunakan mv(1) perintah untuk memulihkan
isi dari file ",B".
Jika ada penggabungan yang diperlukan, tidak ada perbedaan yang akan dilakukan. Pesan kesalahan dan non-
status keluar nol juga akan dihasilkan. Ini untuk memastikan bahwa pengembang memperhatikan bahwa penggabungan
telah dilakukan, dan bahwa mereka mendamaikan sumber dan gabungan ,D file sebelum
perbedaan berikutnya. Lihat -Tidak_Gabung dan -Hanya_Gabung pilihan, di bawah, untuk kontrol yang tepat dari
saat penggabungan dilakukan.
Kloning dan Penggabungan
Bila Anda menggunakan aeclon(1) untuk mengkloning set perubahan, dan kemudian mengintegrasikan salah satu dari dua perubahan
set, Anda akan mengamati bahwa Aegis mengatakan bahwa file dari perubahan yang tidak terintegrasi sekarang
kadaluarsa.
Jika kamu lari aem(1) untuk mengembalikan file yang kedaluwarsa, menggabungkan(1) dan beberapa (tetapi
tidak) semua alat penggabungan lainnya, ini menandakan hampir semua hal sebagai konflik, meskipun
kedua alternatif itu identik.
Masalahnya adalah dua perubahan membuat pengeditan identik ke tempat yang sama di file yang sama
adalah konflik logis, bahkan jika bukan konflik yang sebenarnya, dan dibutuhkan manusia untuk memahaminya
keluar perbedaan. Pikirkan daftar belanja: kamar mandi membutuhkan lebih banyak sabun, dan begitu juga
kamar mandi utama. "Sabun" kedua pada gabungan dua daftar belanja bukanlah
duplikat, Anda benar-benar membutuhkan dua kotak sabun. Terkadang pengeditan file sumber adalah
sama: terkadang konflik logis diselesaikan dengan menerapkan kedua pengeditan yang identik, bukan
hanya satu.
Ini hanya menggabungkan(1) perintah menjadi lebih konservatif daripada RCS bergabung(1) perintah.
Cara termudah untuk menghadapi situasi umum ini adalah dengan menjalankan
aecpu -tidak berubah
Command sebelum Anda menjalankan aem(1) menggabungkan perintah, dan Anda akan memiliki lebih sedikit kesedihan. Itu juga
perlu diingat bahwa Aegis menyimpan file asli dengan akhiran ,B (B untuk cadangan) jadi
kamu bisa saja
mv fubar,B fubar
jika Anda tahu bahwa semua konflik adalah konflik logis.
INTEGRASI
Selama integrasi, perlu juga untuk membedakan suatu perubahan. Ini menyediakan
perbedaan antara cabang dan induknya, karena ketika pengembangan pada cabang adalah
selesai dan harus ditinjau. Dasar dari sebuah cabang adalah perkembangan
direktori perubahan komposit yang diwakilinya.
PILIHAN
Opsi berikut dipahami:
-Antisipasi ganti-nomor
Opsi ini digunakan untuk menominasikan sumber untuk file referensi, daripada
dasar. Ini dapat digunakan untuk menyinkronkan dengan perubahan tanpa harus menunggu
untuk itu tiba di baseline. Ini adalah kesalahan jika perubahan yang diantisipasi adalah
tidak di salah satu 'makhluk ditinjau' or 'menunggu integrasi' or 'makhluk
terintegrasi' negara bagian. Penggabungan selalu dilakukan, karena perubahan yang diantisipasi
adalah "tentang" untuk membuat file umum kedaluwarsa. Anda masih harus melakukan
"nyata" bergabung nanti.
-Cabang jumlah
Opsi ini dapat digunakan untuk menentukan cabang yang berbeda untuk file asal, bukan
daripada garis dasar. (Lihat juga -Belalai pilihan. Harap Dicatat: -Cabang Option
tidak mengambil nama proyek, hanya akhiran nomor cabang.
-Eyang
Opsi ini dapat digunakan untuk menentukan cabang kakek-nenek (satu naik dari
cabang saat ini) untuk file asal, bukan baseline. (Kakek-kakek
opsi sama dengan opsi “-branch ..”.)
-Mengubah jumlah
Opsi ini dapat digunakan untuk menentukan perubahan tertentu dalam suatu proyek. Lihat
Aegis(1) untuk deskripsi lengkap tentang opsi ini.
-Membantu
Opsi ini dapat digunakan untuk memperoleh informasi lebih lanjut tentang cara menggunakan Aegis
program.
-Daftar
Opsi ini dapat digunakan untuk mendapatkan daftar subjek yang sesuai untuk perintah ini.
Daftarnya mungkin lebih umum dari yang diharapkan.
-Tidak_Logging
Opsi ini dapat digunakan untuk menonaktifkan pencatatan otomatis keluaran dan kesalahan untuk
file. Ini sering berguna ketika beberapa perintah perlindungan digabungkan dalam sebuah shell
Script.
-Belalai
Opsi ini dapat digunakan untuk menentukan batang proyek untuk file asal, bukan
daripada garis dasar. (Lihat juga -Cabang opsi, opsi -trunk sama dengan
opsi "-cabang -".)
-Tidak_Gabung
Opsi ini digunakan untuk menyebabkan hanya perbedaan file yang dihasilkan, bahkan ketika
versi file sudah kedaluwarsa. Jika tidak disetel, defaultnya adalah menggunakan
perbedaan_preferensi bidang aeuconf(5) berkas.
-Hanya_Gabung
Opsi ini digunakan untuk menyebabkan hanya penggabungan file yang dilakukan pada file dengan out-
versi terkini. File sumber lainnya diabaikan. Jika tidak disetel, defaultnya adalah
gunakan perbedaan_preferensi bidang aeuconf(5) berkas.
-Gabung_Otomatis
Opsi ini digunakan untuk melakukan -Hanya_Gabung jika ada file sumber yang kedaluwarsa
versi, jika tidak -Tidak_Gabung is dilakukan. Hanya penggabungan atau perbedaan yang akan
dilakukan, itu tidak akan pernah menggunakan campuran. Jika tidak disetel, defaultnya adalah menggunakan
perbedaan_preferensi bidang aeuconf(5) berkas.
-Proyek nama
Opsi ini dapat digunakan untuk memilih proyek yang diminati. Ketika tidak -Proyek
opsi ditentukan, AEGIS_PROJECT variabel lingkungan dikonsultasikan. Jika
yang tidak ada, milik pengguna $HOME/.aegisrc file diperiksa untuk default
bidang proyek (lihat aeuconf(5) untuk informasi lebih lanjut). Jika itu tidak ada,
ketika pengguna hanya mengerjakan perubahan dalam satu proyek, proyek
nama default untuk proyek itu. Jika tidak, itu adalah kesalahan.
-Pendek
Opsi ini dapat digunakan untuk menyebabkan cantuman menghasilkan minimal
informasi. Biasanya berguna untuk skrip shell.
-Bertele-tele
Opsi ini dapat digunakan untuk menyebabkan aegis menghasilkan lebih banyak output. Secara default perlindungan
hanya menghasilkan output pada kesalahan. Ketika digunakan dengan -Daftar opsi opsi ini
menyebabkan judul kolom ditambahkan.
-Tunggu Opsi ini dapat digunakan untuk meminta perintah Aegis untuk menunggu kunci akses, jika
mereka tidak dapat diperoleh dengan segera. Default untuk pengguna lock_wait_preferensi
jika tidak ditentukan, lihat aeuconf(5) untuk informasi lebih lanjut.
-Tidak_Tunggu
Opsi ini dapat digunakan untuk meminta perintah Aegis untuk mengeluarkan kesalahan fatal jika mengakses
kunci tidak dapat diperoleh dengan segera. Default untuk pengguna
lock_wait_preferensi jika tidak ditentukan, lihat aeuconf(5) untuk informasi lebih lanjut.
Lihat juga Aegis(1) untuk opsi yang umum untuk semua perintah perlindungan.
Semua opsi dapat disingkat; singkatan didokumentasikan sebagai huruf besar,
semua huruf kecil dan garis bawah (_) adalah opsional. Anda harus menggunakan berturut-turut
urutan huruf opsional.
Semua opsi tidak peka huruf besar/kecil, Anda dapat mengetiknya dalam huruf besar atau huruf kecil atau a
kombinasi keduanya, kasus tidak penting.
Misalnya: argumen "-project, "-PROJ" dan "-p" semuanya ditafsirkan sebagai
-Proyek pilihan. Argumen "-prj" tidak akan dipahami, karena berurutan
karakter opsional tidak disediakan.
Opsi dan argumen baris perintah lainnya dapat dicampur secara sewenang-wenang di baris perintah,
setelah pemilih fungsi.
Nama opsi panjang GNU dipahami. Karena semua nama opsi untuk Aegis panjang,
ini berarti mengabaikan awalan tambahan '-'. NS "--Option=nilai"konvensi juga
mengerti.
DISARANKAN ALIAS
Alias yang disarankan untuk perintah ini adalah
csh% alias aed 'aegis -diff \!* -v'
sh$ aed(){aegis -diff "$@" -v}
Untuk kenyamanan pengguna, terutama ketika mereka telah memilih preferensi "tanpa penggabungan",
ada juga alias gabungan:
csh% alias aem 'aegis -diff -only_merge \!* -v'
sh$ aem(){aegis -diff -only_merge $* -v}
GALAT
Ini adalah kesalahan jika perubahan tidak dalam makhluk dikembangkan or makhluk terpadu negara bagian.
EXIT STATUS
Aegis perintah akan keluar dengan status 1 pada kesalahan apa pun. NS Aegis perintah hanya akan
exit dengan status 0 jika tidak ada error.
LINGKUNGAN VARIABEL
Lihat Aegis(1) untuk daftar variabel lingkungan yang dapat mempengaruhi perintah ini. Lihat
aepconf(5) untuk file konfigurasi proyek proyek_spesifik bidang untuk cara mengatur
variabel lingkungan untuk semua perintah yang dijalankan oleh Aegis.
Gunakan aed online menggunakan layanan onworks.net