Ana Sayfa

Jujutsu ile Yama Formatında Değişiklikleri Düzenleme

1 dk okuma

Jujutsu versiyon kontrol sisteminde belirli bir değişikliğin içeriğini düzenlemek, özellikle tek bir kelimeyi veya metin parçasını değiştirmek, standart yöntemlerle zorlayıcı olabiliyor. Yazar, bir metodu yeniden adlandırmak istediğinde, jj show ile değişikliği inceleyip manuel arama/değiştirme yapmanın veya jj absorb --into kullanarak istenmeyen değişiklikleri sonradan terk etmenin zahmetli ve karmaşık olduğunu belirtiyor. Git'teki git format-patch ve git am komutlarının sunduğu temiz çözüme Jujutsu'da doğrudan bir karşılık bulunmuyor.

Jujutsu'nun jj diffedit komutu, tek bir değişikliğin içeriğini düzenlemeye olanak tanır ancak varsayılan editörü yalnızca satırları tutma veya atma işlevselliği sunar; içeriği doğrudan değiştirmeye izin vermez. Harici birleştirme araçları da bu özel senaryo için uygun değildir. Makale, bu sorunu aşmak için Jujutsu'nun yapılandırma dosyası aracılığıyla özel bir harici araç ekleme yöntemini açıklıyor. Bu araç, jj diffedit ile kullanıldığında, değişiklik öncesi ve sonrası durumları (sol ve sağ dizinler) kullanarak bir yama dosyası oluşturur ve bu yamayı bir editörde açar.

Yazar, bu amaçla basit bir shell betiği geliştirdiğini paylaşıyor. Betik, Jujutsu'nun sağladığı "sağ" dizini bir şablon olarak alıp, orijinal farkı geri uyguladıktan sonra kullanıcının düzenlediği değiştirilmiş versiyonu uygular. Bu yaklaşım, Jujutsu tarafından salt okunur olarak işaretlenmiş "sol" dizine doğrudan müdahale etme gerekliliğini ortadan kaldırır. Betiği Jujutsu yapılandırmasına ekleyerek, jj diffedit --tool=patch komutuyla yama dosyasını doğrudan bir editörde açmak ve düzenlemek mümkün hale geliyor, böylece Jujutsu'da değişiklikleri daha esnek bir şekilde yönetme imkanı sunuluyor.

İçgörü

Jujutsu kullanıcıları, özel bir araç entegrasyonu sayesinde versiyon kontrol sistemindeki değişiklikleri yama formatında daha esnek ve verimli bir şekilde düzenleyebilirler.

Kaynak