Taahhüt karması verildiğinde GitHub'da bir taahhüt bulun


286

Github için oldukça yeniyim ve amatör bir sorunla karşılaştım.

Ben bir kod inceleme yapmak istendi ve bir taahhüt karma sağlandı, ancak ben Git karma kullanarak arama yapabilirsiniz ama hiçbir şey bulamadı Git bakmayı denedim.

Değişen kodu sadece kesin karmayı kullanarak bulabilmemin bir yolu var mı?


46
Github'un aramalardaki karmaları tanımaması ve bu karma ile eşleşen bir eşleşme olduğunu size tamamen tuhaf buluyorum.
Craig Ringer

Aslında @CraigRinger, github araması bir çekme isteğinde ortaya çıkarsa karmalarla eşleşir . Gerçekten de, isterseniz github'ın tamamını yedi karakterlik bir karma önek için arayabilirsiniz. Ancak bu sadece herhangi bir taahhüt değil, bir çekme talebi olmalıdır.
Todd Owen

4
@ToddOwen Hangi güzel, ama önemli değil. Bu repo içinde arama yaparken bir repo içindeki karma karmaları ile eşleşmelidir, gerçekten tuhaf değil.
Craig Ringer

2
@CraigRinger Şimdi, sonunda! Yeni cevabımı görün .
Todd Owen

Yanıtlar:


379

Formun URL'si, söz https://github.com/<owner>/<project>/commit/<hash>konusu taahhütte sunulan değişiklikleri gösterir. Örneğin, GitHub'daki projelerimden birine yaptığım son hata düzeltmesi:

https://github.com/jerith666/git-graph/commit/35e32b6a00dec02ae7d7c45c6b7106779a124685

Ayrıca hash'ı herhangi bir benzersiz önekle kısaltabilirsiniz, örneğin:

https://github.com/jerith666/git-graph/commit/35e32b


GitHub'ı yeni sorduğunuzu biliyorum, ancak tamlık için: Depoyu kontrol ettiyseniz, komut satırından, bu komutlardan herhangi biriyle temelde aynı şeyi elde edebilirsiniz (benzersiz önekler de burada çalışır):

git show 35e32b6a00dec02ae7d7c45c6b7106779a124685
git log -p -1 35e32b6a00dec02ae7d7c45c6b7106779a124685

Not: İşleme karmasını çok kısaltırsanız, komut satırı size yardımcı bir belirsizlik mesajı verir, ancak GitHub sadece 404 döndürür.


ben mongo bir iddia izlemeye çalışırken bu rastladı ve bir taahhüt karma verilen belirli bir dosyayı görüntülemek için benzer bir URL kalıbı bulundu: github.com/$owner/$project/blob/$hash/path /to/file.ext - örn. github.com/mongodb/mongo/blob/…
RubyTuesdayDONO

Bu ise: git log -p -1 35e32b6a00dec02ae7d7c45c6b7106779a124685, -1aksi takdirde tüm olders kaydedilmesini gösterecektir çünkü gereklidir; karma işleminin ilk dört sayısını (testlerimdeki minimum değer) kullanabileceğinizi bilmek iyidir, çünkü karma için otomatik tamamlama yoktur; ve böyle dalı belirleyemezsiniz: git log master -p -1 35e3. Git sürümü: 1.7.9.5.
Rafael Barros

Bir kez daha, ama çok önemli: yine bir dal belirtemezsiniz, ancak bir karma verdiğinizde yerel ve uzak dallarda otomatik olarak arama yapar. Bu nedenle, evet, yerel repo ile komut satırından birleştirmeden önce belirli bir uzaktan fark arayabilirsiniz.
Rafael Barros

1
Herkesin merak etmesi durumunda ( öyleydim !), Bu aynı zamanda hem github'da hem de github.com/jerith666/git-graph/commit/35e32b6a ve komut satırında karma ilk 8 ile çalışır :git log -p -1 35e32b6a
SimplGy

7
Kullanıcı arayüzünün bunu olduğundan daha kolay hale getirmesi aptalca ... Umarım özellik isteği bunu yapar.
ocroquette

49

Tek taahhüdü görüntüle:
https://github.com/<user>/<project>/commit/<hash>

Günlüğü görüntüle:
https://github.com/<user>/<project>/commits/<hash>

Reponun tamamını görüntüle:
https://github.com/<user>/<project>/tree/<hash>

<hash> benzersiz olduğu sürece herhangi bir uzunluk olabilir.


1
uzunluk en az 7 karakter ise sorun değil
Kasun Siyambalapitiya


21

Taahhütleri arama yeteneği GitHub'a yakın zamanda eklendi.

Bir karma arama yapmak için, arama kutusuna en az ilk 7 karakteri girmeniz yeterlidir. Ardından, sonuçlar sayfasında, eşleşen taahhütleri görmek için "İşlemler" sekmesini (ancak yalnızca varsayılan dalda master) veya taahhüdü içeren çekme isteklerini görmek için "Sorunlar" sekmesini tıklayın.

Daha açık olmak hash:için, aramaya önek ekleyebilirsiniz , ancak gerçekten gerekli değildir.

Ayrıca bir REST API (yazma sırasında hala önizlemede).


2
Aslında bu şekilde çalıştığına şaşırdım. Çok sezgisel değil. Varsayılan olarak Github, "Kod" sekmesini gösterecektir. Varsayılan olarak içinde sonuç bulunan tek sekmeyi göstermemeli mi?
summerian

Açık olmak gerekirse, kendi kurumsal github kurulumuna sahipseniz, herhangi bir repoda herhangi bir taahhütte bulunarak bu şekilde arama yapabilirsiniz: https://YourGithubDomain/search?q=YOUR_COMMIT_HASH&type=Commits Bunu Github'da da denedim ve orada da çalıştı, örneğin https://github.com/search?q=38db172d13962ea177c00c9a3b4b3169b317e94b&type=Commits
Brad Parks
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.