2010-12-15 12 views
23

Boşluk değişiklikleri göstermeden github.com'da bir taahhütte bulunmanın bir yolu var mı?Github üzerinde boşluk değişikliği olmadan iletme

Bunu konsoldan görüntülemenin bir yolu var mı? yani klonlayın ve tüm beyaz boşluk değişikliklerini yerel olarak göz ardı ederek taahhüt (ağaç) 'a bakın.

Geniş kapsamlı Trac kullanıyorum; Ignore White space changes'a benzer bir şey arıyorum (bunlar değişiklik görünümünde bulunabilir). Bunun için

+0

https://gist.github.com/xPaw/de6ee132a2e267ef6960: GitBub UI'de, birimde boşluk değişikliklerini yok saymak için bir düğme ekler –

cevap

60

ekleme ?w=1 URL'ye bir diff gösteren herhangi github.com sayfasında ve boşluk göz ardı eder. Bakınız this blog post.

+5

Bu, geçmişte çalışıyordu, ama benim için daha fazla değil. –

+2

Sadece test ettim ve benim için çalışıyor, belki de –

+0

vay! thats awesome, bilmiyordum :) Paylaşım için çok teşekkürler! Topluluk ve sizin gibi üyeler için alkışlar +1 – SGhosh

20

sen (git en fark komutları herhangi biriyle) komut satırına kullanabileceğiniz seçeneklerin bir üçlü vardır:

  • --ignore-space-at-eol EOL boşluk değişiklikleri yok sayın.
  • -b, --ignore-space-change Beyaz boşluk miktarındaki değişiklikleri yok sayın. Bu satır sonundaki boşlukları yok sayar ve bir veya daha fazla boşluk karakterinin diğer tüm sıralarını eşdeğer olarak kabul eder. Satırları karşılaştırırken boşlukları göz ardı edin. Bu, bir satırın, diğer satırın hiçbirinin bulunmadığı bir boşluk içeriyor olsa bile, farklılıkları yok sayar.

Github'un bu seçenekleri kullanarak herhangi bir şey uyguladığına inanmıyorum. Ne yapar

jQuery.expr[':'].hasX = function(obj) { var $this = $(obj); return ($this.find('.x').length && $this.next().find('.x').length); }; jQuery('.data tbody tr:hasX').toggle().next().toggle(); 

:

+1

Büyük yanıt, sorunun kendisinde yazım hatalarını düzeltdiğiniz için teşekkürler ... –

+20

https://github.com/blog/967-github-secrets - whitespace'in yok sayıldığını görmek için URL'ye w = 1 ekleyebilirsin. – Alexander

+1

ne yazık ki,? W = 1 yeni satır karakterlerini görmezden gelmiyor, ne –

0

sayfasını işlemek kaynak HTML içine baktıktan sonra mümkün oneliner aşağıdaki yapar ... github "x" CSS sınıfı ile saf boşluk değişiklikleri işaretler öğrendim ettik , taahhüt tablosunun tüm satırlarında çalışır ve satır verilirse satırları gizler ve bunlardan sonra bunlardan biri ".x" öğesine sahiptir.

İşte tam JS var:

// create new selector 
jQuery.expr[':'].hasX = function(obj) { 
    // cache 
    var $this = $(obj); 
    // whether this and next line do have '.x' element as child 
    return $this.find('.x').length && $this.next().find('.x').length; 
} 

// select all rows and hide (ones containing "-") 
jQuery('.data tbody tr:hasX').toggle() 
// hide the ones after selected (ones containing "+") 
    .next().toggle(); 
1

Ne yazık ki X şey gitti ve önceki ön bilgiyle birlikte işe yaramaz hale getirmektedir. İşte şimdilik çalışması gerekir şeydir:

var i, e, tr, tdL, tdR, textL, textR, text = function (el) { return el.parentNode.children[2].children[1].children[0].textContent.replace(/\s/g, '').substr(1); } 
for (i = 0, e = document.getElementsByClassName('gd'); i < e.length; ++i) { 
    tr = e[i].parentNode.parentNode.parentNode; 
    if ('&nbsp;' !== tr.children[1].innerHTML) { continue; } 
    tdL = tr.children[0]; 
    tdR = document.getElementById(tdL.id.replace(/^L(\d+)L/, 'L$1R')), 
    textL = text(tdL); 
    textR = text(tdR); 
    if (textL === textR) { tdL.parentNode.style.display = tdR.parentNode.style.display = 'none'; } 
} 
+0

Güncelleme için teşekkürler. –