Bu, Ubuntu Online, Fedora Online, Windows çevrimiçi öykünücüsü veya MAC OS çevrimiçi öykünücüsü gibi birden fazla ücretsiz çevrimiçi iş istasyonumuzdan birini kullanarak OnWorks ücretsiz barındırma sağlayıcısında çalıştırılabilen komut dpatch'idir.
Program:
ADI
dpatch - Debian için yama bakım sistemi
SİNOPSİS
Dpatch [seçenekleri] komuta [komut argümanları]
TANIM
Dpatch dbs'ye benzer şekilde Debian paketleri için kullanımı kolay bir yama sistemidir.
paket, ancak kullanımı çok daha basit.
Yamaları ve diğer basit özelleştirme şablonlarını debian/yamalar ve
aksi takdirde, kaynak ağacınızın çok fazla yeniden düzenlenmesini gerektirmez. Yamaları almak için
derleme zamanında uygulandığında, yalnızca bir makefile snippet'i eklemeniz ve ardından
yama/yama kaldırma hedef inşa etmek or çamça aşaması debian/kurallar. Daha fazla esneklik için,
arayabilirsin /usr/bin/dpatch doğrudan da.
UYARI
Dpatch kullanımdan kaldırıldı, lütfen '3.0 (yorgan)' Debian kaynak paketi biçimine geçin
yerine. Görmek http://wiki.debian.org/Projects/DebSrc3.0#SSS nasıl yapılacağına dair kısa bir rehber için
bunu.
KÜRESEL SEÇENEKLER
Dpatch'in genel davranışını değiştiren ve etkisi olan birkaç seçenek vardır.
yalnızca birinde değil, mevcut komutların çoğunda.
Bu küresel seçenekler şunlardır:
--workdir (-NS) DİZİN
Varsayılan olarak, dpatch, çalıştırıldığı kaynak ağaca yamalar uygular. Bununla
seçeneği, bunu değiştirebilir ve dpatch'e farklı bir ağaç üzerinde çalışmasını söyleyebilir, ancak
dpatch'leri mevcut olandan almak.
Bunun, dpatch komut dosyalarına yalnızca ikinci bir argüman ileteceğini ve
belirtilen dizine geçin. Bunu yapmak için, --chdir seçenek açıklandı
altında.
--chdir (-C)
Mevcut olandan farklı bir çalışma dizini kullanırken, daha önce orada değiştirin.
yamaları uygulamaya çalışıyor.
ile birlikte kullanılmalıdır. --workdir seçeneği.
--sıkı (-S)
Katı modu etkinleştirin; bu, dpatch'in uyarılarda bile erken kurtarılacağı anlamına gelir
(zaten uygulanmış bir yamayı uygulamaya çalışırken olduğu gibi - normalde
sadece atlayın).
--Kuvvet (-F)
dpatch normal olarak yapılsa bile, yamaların uygulanmasını veya kaldırılmasını zorlayın
bunları atlayın çünkü işlem daha önce yapıldı.
--cpp ile
cpp kullanımını zorla. kullanımını geçersiz kılar DPATCH_OPTION_CPP=1 seçeneği
debian/yamalar/00seçenekleri dosyası.
KOMUTLAR
Patch idare komutlar
Tüm yama işleme komutları için genel bir sözdizimi vardır, yani komut
kendisi çalışmak için dpatch adlarının bir listesini alır, ardından her şeyde yapması gerekeni yapar
komut satırında belirtilen sırayla.
Ardından, her yama işleme komutunun bir sürümü vardır. -herşey yapan sonek
herhangi bir argüman almaz ve mevcut her biri için gerekli eylemi gerçekleştirir.
dpatch.
Son varyasyon, a ile bir komuttur. -a kadar or -kadar sadece bir tane alan sonek
argüman: bir dpatch'in adı. Tüm dpatch'lerde uygun eylem gerçekleştirilecektir.
bu belirtilene kadar ve buna dahil.
uygulamak [seçenekleri]
yama [seçenekleri]
Çalışan ağaca bir veya daha fazla dpatch uygular (geçerli değilse, geçerli dizin
aksi söylendi). Varsayılan olarak, belirtilen yamalar tam olarak aynı şekilde uygulanacaktır.
sıralandıkları belirtildi.
Opsiyonlar
--stampdir=rehber, -s=rehber
Damga dosyalarını içine koy rehber varsayılan yerine debian/yamalı.
--yardım et (-H)
Komut hakkında kısa bir yardım mesajı yazdırın.
--sessizlik (-Q)
Komutu hiçbir şey yazdırmamaya zorlar.
--ayrıntılı (-v)
Komut dosyası çıktısının gizlenmesini devre dışı bırakır.
uygulamadan kaldırmak [seçenekleri]
yamayı kaldırmak [seçenekleri]
Çalışan ağaca bir veya daha fazla dpatch uygular (geçerli değilse, geçerli dizin
aksi söylendi). Varsayılan olarak, belirtilen yamalar tersine uygulanacaktır.
genellikle ters sırada uygulanmaları gerektiği için belirtildiler
(uygulama sırasına kıyasla, yani).
Opsiyonlar
--stampdir=rehber, -s=rehber
Damga dosyalarını kullanın rehber varsayılan yerine debian/yamalı.
--yardım et (-H)
Komut hakkında kısa bir yardım mesajı yazdırın.
--sessizlik (-Q)
Komutu hiçbir şey yazdırmamaya zorlar.
--ayrıntılı (-v)
Komut dosyası çıktısının gizlenmesini devre dışı bırakır.
kedi [seçenekleri]
Bir dpatch hakkında adı, yazarı ve açıklaması gibi meta bilgileri yazdırın
(bunlardan herhangi biri uygun seçenekle devre dışı bırakılabilir).
Opsiyonlar
--meta yok, --desc-yalnızca (-nm, -NS)
Yalnızca yama açıklamasını yazdırın.
--yalnızca yazar (-ya)
Yalnızca yamanın yazarını yazdırın.
--azalan yok, (-nd)
Yama açıklamasını yazdırmayın.
--yardım et (-H)
Komut hakkında kısa bir yardım mesajı yazdırın.
--sessizlik (-Q)
Komutu hiçbir şey yazdırmamaya zorlar.
liste [seçenekleri]
Verilen yamaların adını listeleyin. Bu komutlar, aşağıdakiler dışında gerçekten kullanışlı değildir.
hepsini listele mevcut tüm yamaları listeleyen varyant.
Opsiyonlar
--yardım et (-H)
Komut hakkında kısa bir yardım mesajı yazdırın.
durum [seçenekleri]
Verilen yamaların durumunu yazdırır - çalışmaya uygulanıp uygulanmadıklarını
ağaç ya da değil.
Opsiyonlar
--stampdir=rehber, -s=rehber
Damga dosyalarını kullanın rehber varsayılan yerine debian/yamalı.
--yardım et (-H)
Komut hakkında kısa bir yardım mesajı yazdırın.
--sessizlik (-Q)
Komutu hiçbir şey yazdırmamaya zorlar.
log [seçenekleri]
Verilen yama denemelerinin günlüğünü görüntüler.
Opsiyonlar
--stampdir=rehber, -s=rehber
Damga dosyalarını kullanın rehber varsayılan yerine debian/yamalı.
--yardım et (-H)
Komut hakkında kısa bir yardım mesajı yazdırın.
--sessizlik (-Q)
Komutu hiçbir şey yazdırmamaya zorlar, ancak ekstra olmadan günlükleri
üstüne şeker.
çağrı [seçenekleri]
Kullanıcı tarafından belirtilen bir bağımsız değişkenle bir dpatch çağırın. a ile tüm argümanlar paket- önek
dpatch'in kendisi tarafından kullanılmaması garanti edilir ve bununla kullanım için ayrılmıştır.
Komut.
Bu komut, en çok dpatch'ten özel meta bilgileri çıkarmak için kullanışlıdır.
senaryolar.
Opsiyonlar
--argüman=arg (-bir=argüman)
ile yamaları çağırın arg argüman olarak.
--yardım et (-H)
Komut hakkında kısa bir yardım mesajı yazdırın.
--sessizlik (-Q)
Komutu hiçbir şey yazdırmamaya zorlar.
Diğer komutlar
yama şablonu [seçenekleri] [yama adı] [tanım]
Verilen bilgilere dayalı olarak yarı standart bir dpatch komut dosyası şablonu yazdırın.
Komut satırı. Eğer bir tanım verildiğinde, yaklaşık 72 karakter olacak şekilde katlanacaktır.
birden fazla satır uygun şekilde.
Şablonu STDIN'e hazırlarken, standart girişin içeriği
şablondan hemen sonra yazdırılır.
Opsiyonlar
-- başa ekle (-P)
Şablonu STDIN'in başına ekleyin.
--yardım et (-H)
Komut hakkında kısa bir yardım mesajı yazdırın.
yardım et (--Yardım, -H) [komuta]
dpatch'in kendisi veya belirli bir konu hakkında biraz daha ayrıntılı yardım vermeye çalışın.
dpatch komutu.
versiyon
Dpatch sürüm numarasını yazdırır ve çıkar.
DPATCH IN DEBIAN TUR PAKETLERİ
dpatch'i kullanmanın iki farklı yolu vardır. debian/kurallar: doğrudan aramak veya
dahil olmak üzere dpatch.make(7). Burada yalnızca ilk yöntem açıklanacaktır - ikincisi
kendi kılavuz sayfası.
NOT: Aşağıdaki örnekler ayrıca şunun eklenmesini gerektirir: .PARALEL DEĞİL kafasına bayrak
debian/kurallar bağımlılık listeleri yürütme sırasına bağlı olduğundan. Olmadan
.PARALEL DEĞİL, birden çok marka iş parçacığında yürütme sırası yanlış olabilir ( -j
seçenek).
Çoğu durumda, oluşturma işlemi sırasında dpatch'i en kısa sürede çalıştırmak isteyeceksiniz, çünkü
mümkün. Bunun nasıl başarılabileceği büyük ölçüde mevcut duruma bağlıdır. debian/kurallar.
Ancak, yaygın uygulamada çoğu paketin bir inşa etmek (Ya da yapı damgası), yapılandırma.durumya da
yapılandırmak (Ya da yapılandırma damgası) hedef. İlk dpatch oluşturmanın en kolay yolu
şey, kişinin yalnızca dpatch çağıran bir kural yazması ve onu listeye eklemesi gerekir.
uygun hedef için ön koşullar (yukarıya bakın).
Dyamaların kaldırılması kolay veya biraz daha zor olabilir. içinde hiçbir şey yoksa çamça kural dokunuşları
dpatches tarafından değiştirilen dosyalar (uyumsuz değişiklikler yaratıyor), güvenle ekleyebilirsiniz yamayı kaldırmak için
listesi çamça kural bağımlılıkları.
Yamalar yapı sistemini etkiliyorsa, kaynaktan sonra uygulanmaları gerekir.
ağaç temizlendi. Bunu yapmak için yeniden adlandırın çamça hedef, demek, temiz yamalı, bir yaz
dpatch'leri uygulamak için dpatch'i çağıran ve yeni bir çamça sahip olan kural
temiz yamalı ve yamayı kaldırmak önkoşulları olarak.
Bir örneğe bakalım! Önce orijinal metnin ilgili kısımlarına bakalım.
debian/kurallar hayali paketimiz:
config.status: yapılandır
./configure --prefix=/ usr --mandir=/ usr / paylaş
yapı: config.status
${ YAP}
temiz:
$(test dizini)
$(test kökü)
${MAKE} temiz
rm -rf debian/hayali paket debian/files debian/substvars
Düzeltme işleminden sonra, bu şöyle görünür:
config.status: yama yapılandırması
./configure --prefix=/ usr --mandir=/ usr / paylaş
yapı: config.status
${ YAP}
temiz: temiz yamalı yamayı kaldır
temiz yamalı:
$(test dizini)
$(test kökü)
${MAKE} temiz
rm -rf debian/hayali paket debian/files debian/substvars
yama: yama damgası
yama damgası:
dpatch hepsini uygula
dpatch cat-all >yama damgası
yamayı kaldır:
dpatch deapply-tümü
rm -rf yama damgası debian/yamalı
Ekleme Dpatch senaryolar için a paket
Dpatch'i kullanırken, kesinlikle sisteme hangi dpatch'lerin uygulanacağını ve hangilerinin uygulanacağını söylemek ister.
atılacak olanlar. En yaygın durumda, yalnızca kişilerin adlarının listelenmesi gerekir.
dpatches (dosya adları ile ilgili debian/yamalar) içinde debian/yamalar/00listesi. Onlar
genellikle uzantıya sahip .dpatch ve uzantı atlanabilir, bu nedenle bir dosya
debian/yamalar/01_one_patch.dpatch olarak yazılmıştır 01_bir_yama içeride debian/yamalar/00listesi
Ancak, uygulama gibi daha esnek bir şeye ihtiyaç duyulan durumlar olabilir.
sadece iki mimaride aynı yama, diyelim ki, m68k ve güç bilgisayarı. Bir bunu çözmek
en az iki çok farklı yol: Biri, her ikisinde de aynı yamayı listelemektir.
debian/yamalar/00list.m68k ve debian/yamalar/00list.powerpc, diğeri kullanmaktır
DPATCH_OPTION_CPP=1 in debian/yamalar/00seçenekleri. 00list dosyası üzerinden geçirilir cpp
ile komuta etmek DEB_BUILD_ARCH mimariye ayarlanmış değişken ve
DEB_BUILD_ARCH_mimari 1'e ayarlanıyor. cpp ile örneğimiz debian/yamalar/00listesi
şöyle görünebilir:
01_manpage_typo
#if tanımlı(DEB_BUILD_ARCH_m68k) || tanımlı(DEB_BUILD_ARCH_powerpc)
/* Bu yama, Macintosh boxen'de rastgele bir derleme zamanı kırılmasını düzeltir. */
02_macintosh_foo
#endif
Oluşturma Dpatch senaryolar
Dpatch komut dizileri oluşturmanın birçok yolu vardır. Bunlar basit, yürütülebilir dosyalardır.
standartlaştırılmış bir çağrı kuralına uyun (belgelenmiş Dpatch(7)).
$EDITOR'unuzu çalıştırabilir veya dpatch-düzenleme-yamave hazır olmalısınız.
dpatch dosyasının yalnızca basit bir yama uygulamak olduğu çoğu durumda, çift
daha kolay yol:
dpatch patch-template -p "01_some_patch" "Rastgele bir yama" \
debian/patches/01_some_patch.dpatch
onworks.net hizmetlerini kullanarak çevrimiçi dpatch kullanın