SORU
7 Aralık 2010, Salı


Git diff bir dizin dışlamak

Git benim diff tüm bir dizin dışlamak nedir merak ediyorum. (Spec /bu durumda). Tüm yazılım serbest git diff komutu kullanarak bir fark yaratıyorum. Ancak görüşler değişiklikleri bu işlem için ilgisiz ve sadece baş ağrısı oluşturabilir. artık yapabileceğimi biliyorum

git diff previous_release..current_release app/

Bu örneğin uygulama dizinindeki tüm değişiklikler için, ama bir fark lib/ dizininde oluşturun. Herkes bu işin nasıl yapılması gerektiğini biliyor mu? Teşekkürler!

Ben sadece açık olmak istiyorum, sadece eksi /spec ucunda benim dizinlerin tüm parametreleri dize biliyorum. Edit: Gerçekten komutu tek bir dizin dışlamak için bir yolu olduğunu umuyordum.

CEVAP
7 Aralık 2010, Salı


Bash kullanın ve extglob verdiğinizi varsayarsak, kabuk tarafında ele verebilir:

git diff previous_release current_release !(spec)

Tüm diğer şeyler listesine sahip olmak tasarruf sağlar.

Ya da, kabuk-agnostik:

git diff previous_release current_release --name-only | grep -v '^spec/' | xargs git diff previous_release current_release --

Bu oyunu kabuk bir kendini argümanlar yeniden yazmak zorunda kalmamak için sarın.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:
Git

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • André Frizzo

    André Frizz

    16 Aralık 2006
  • Dirty Loops

    Dirty Loops

    21 Mayıs 2007
  • REK Roth Productions

    REK Roth Pro

    8 Ocak 2011