GitHub taahhütleri 'Katkılarınız' takvimine kaydedilmez


94

GitHubLinux kabuğumdan depolarıma sürekli taahhütler veriyorum ve web sitesinde olması gerektiği gibi güzel görünüyorlar. Tek sorun, "Katkılarınız" bölümünün yakın zamandaki herhangi bir etkinliği göstermemesidir. Ben nasıl geldim bilmiyorum ama tüm diğer katkıları takvimde görünmüyor (ama yine de Kasım ayında bazı günden itibaren bir yeşil kare var onların repo görünür.
Benim burada eksik?

Github sitem


1
Özel depoya taahhüt ediyor musunuz?
madhead

hayır, tüm depolarım halka açık
Roey Angel

2
Bu soru ya Web Uygulamaları için daha iyidir (kodlamayla değil, arayüz / hesapların nasıl çalıştığı ile ilgilidir) ya da doğrudan GitHub'a: Destek
rastgele

Aslında en iyi cevabı @harsh verdi
Ali Saberi

Yanıtlar:


48

Bu, bazen güncelleme mekanizmalarının çalışmadığı ve "eski bir önbelleğe" dönüştüğü bir Github sorunudur. Bu ciddi bir şey değil, sadece support@github.com adresine sorunu açıklayan bir e-posta gönderin ve hemen çözeceklerdir.


2
Github artık Destek web sitesi kullanılarak yeni destek taleplerinin oluşturulmasını gerektiriyor: support.github.com/contact
Naren

70

gitten

GoTime2 deposu için katkılarınıza az önce bir göz attım ve görünüşe göre düzen şubesine taahhütleri zorluyorsunuz.

Bu katkıların görünmemesinin nedeni, taahhüt katkılarını yalnızca deponun varsayılan şubesine veya gh-page şubesine yapıldığında takip etmemizdir:

https://help.github.com/articles/why-are-my-contributions-not-showing-up-on-my-profile#which-contributions-are-counted

Katkılarınız varsayılan veya gh sayfalarda birleştirildiğinde, onları yazdığınız tarihte onlar için kredi alacaksınız.

bu yüzden benim durumumda, 'katkılarınızın' takvimde görünmesi için 'yerleşim' dalımı 'ana' dalla birleştirmek zorunda kaldım.


2
Kendi şubemde çok çalışıyorum ve sonra 'usta' dalında birleşiyorum, ancak katkılarım hala görünmüyor. Herhangi bir fikir? Düzenleme: Bazı nedenlerden dolayı e-posta adresim git depolarımı yönetmek için kullandığım uygulamada (SourceTree) farklı bir e-postaya ayarlandı. Bu e-posta adresini GitHub hesabıma ekledim, ancak hâlâ herhangi bir değişiklik görmüyorum. İstatistikleri yeniden hesaplamalarının biraz zaman alacağını umuyorum.
robert.bo.roth

4
@ robert.bo.roth ~ "E-postaları bağladıktan sonra, önceki katkılarınızı doldurabilmeleri için desteğe başvurmanız gerekebilir." Kaynak - git.io/NtUV5A
ikaruss

Ya başka bir şubeye taahhütler vermişsem ve daha sonra repo sahibi bunları masterşubede birleştirseydi . Katkılarım 'Katkılarınız' takvimine kaydedilir mi?
soshial

Geç, muhtemelen şimdi biliyorsunuzdur, ancak bunun başka birinin yararına olması durumunda: @soshial evet, durum budur :) fark ettiğim kadarıyla, birleştirildikten sonra geriye tarih atıyor ve onaylıyor.
Ashley Davies

Aynısı bana da oldu. Varsayılan şubeyle birleştirildikten sonra, katkılar hemen göründü. Teşekkür ederim
netishix

69

Benim için bu soruna gitconfig'imde farklı bir e-posta kullandığım iş bilgisayarımdan taahhütte bulunmam neden oldu. İş e-posta adresimi github hesabıma eklemek geçmiş taahhütlerin özette görünmesini sağlamadı, ancak yeni taahhütler artık olması gerektiği gibi görünüyor.

Depo için kullandığınız e-posta adresini ile bulabilirsiniz git config user.email.


4
Aynı durumu yaşıyorum, bu garip, kaydı E-posta yerine userid'e eklerlerse değiştirebiliriz.
Mingtao Zhang

1
En olası cevap bu - taahhütler ve halkla ilişkiler gayet iyi gidiyor olsa da bunun olduğunu daha önce görmüştüm
planetguru

Çok teşekkürler - tam da yaşadığım sorun buydu. A yaptım git config user.email <my email>ve bir taahhüdü itti ve şimdi taahhütlerimi takip ediyor. Bundan sonra onların desteğini yazacağım, çünkü 14 saat çalıştığım, yeni bir repo yaptığım ve tam bir alfa versiyonunun yazıldığı günlerim var, ancak sadece ona karşı açtığım konular için faaliyetim var.
Qaribou'dan Josh

@turtlemonvh Farklı e-postaları farklı depolara bağlamak mümkündür. Dolayısıyla, iş bilgisayarınızı kullanıyorsanız, ancak kişisel bir proje deponuz "kişisel_proje" ve başka bir depo "iş_projesi" varsa, her ikisi için de ayrı e-posta kimlikleri yapılandırabilirsiniz. Terminaldeki repo dizinine gidin ve aşağıdakileri yapın $pwd personal_project $git config user.email "your personal email" $pwd work_project $git config user.email "work email"Bu, katkılarınızı doğru saymalıdır.
Chaitra Suresh

Bu muhtemelen kabul cevabı olmalıdır. Bilginize, git'in geçmişini değiştirebilirsiniz. İşte github'dan talimatlar: yazar-bilgilerini değiştirme
Ben,


16

Bu hile yaptı! Sadece kullandım $ git config user.email "my email address used on my git repo"ve işe yaradı.


12

"Değişiklikleri, github hesabınıza giriş yapmak için kullandığınız e-posta kimliğiyle yapmanız gerekir"

Nasıl çözülür:

  • Aşağıdaki komutu kullanarak tüm depolar için global e-posta kimliğini değiştirin.

git config --global user.email abc@xyz.com

  • Veya belirli bir arşiv için e-posta kimliğini değiştirin. Belirli bir deponun içinden aşağıdaki komutu çalıştırın

git config kullanıcı.email abc@xyz.com

  • Veya bilgi havuzunda .git / config dosyasını açın ve düzenleyin

email = abc@xyz.com name = abc

diğer nedenler burada bulunabilir https://help.github.com/articles/why-are-my-contributions-not-showing-up-on-my-profile/


11

Yerel e-postanızın hesaptaki ile tamamen aynı olduğundan emin olun.

Terminale gidin ve taahhütleri bastırdığınız klasörün içinde çalıştırın:

git config --global user.email
  #=> TRICULI.TO@MAIL.com

git config --system user.email
  #=> 

git config --local user.email
  #=> triculito@mail.com

Bana da benzer bir şey oluyordu. Hesabımdaki e-posta --global olandı, ancak benim --yerim biraz farklıydı, '.'

(Gmail'de bu e-postalar arasında hiçbir fark yoktur, tamamen aynı şekilde çalışırlar).


1
Bu benim için çalıştı. Genel bilgilerim doğruydu ancak sistem ve yerel e-postalar boş. Bu ikisini ekledi ve şimdi taahhütlerim ortaya çıkıyor.
KellyCode

10

bu nedenle bu genellikle birçok faktöre bağlı olarak olur ve bunun için bu GitHub yardımını ziyaret etmeniz gerekir.

Bulduğum en yaygın hatalar şunlardı:

  1. E-posta, yerel makinede doğru yapılandırılmamış. (dizüstü bilgisayarınız / bilgisayarınız).
  2. Çatallanma.
  3. Kaydetme için varsayılan veya gh-page dalını kullanmamak.

Son zamanlarda şahsen 1 sorunu yaşadım, bunun için terminal / cmd / cli'ye gittim ve bu komutu çalıştırarak e-posta adresimi yerel olarak yapılandırdım

git config --global user.email yourname@email.address

Bu bittiğinde, bu yapılandırmayı şu şekilde tekrar çalıştırmayı deneyin:

git config --global user.email

Şunları görebilmelisiniz:

yourname@email.address

Bu doğruysa, yerel makinenizi genel genel deponuzla başarıyla yapılandırdınız. Şimdi bir sonraki taahhüdünüz takviminize eklenecek.


Düzeltme için teşekkürler @aasmin ali
geekidharsh

7

Belki Github bu sorunu çözmüştür. Basit bir yol var, github.com e-posta ayarına gidin: https://github.com/settings/emails

Kişisel ayarlar -> E-postalar

Buraya e-posta adresi ekleyebilir ve yeni e-posta adresinizi bir doğrulama bağlantısı göndererek doğrulayabilirsiniz, ardından önceki taahhütlerinizin tamamının 'Katkılarınız' takviminde kaydedildiğini göreceksiniz. Ve bu e-posta doğrulaması, GitHub'dan bildirimler ve şifre sıfırlamaları almanıza da olanak tanır.

Yeni e-posta adresiniz, hesapla ilgili bildirimler (ör. Hesap değişiklikleri ve fatura makbuzları) ve ayrıca web tabanlı GitHub işlemleri (ör. Düzenlemeler ve birleştirmeler) için kullanılacaktır.


Tüm sıkı çalışmalarımın sonunda tekrar gösterildiğini görmek güzel ... :)
çalıştı

Yaptığım şey buydu ve harika çalıştı. "Eksik" olduğunu düşündüğüm tüm eski taahhütlerimi gördüm!
Afflatus

Bunu ben yaptım. Ama yine de çalışmamı grafikte göremiyorum. :( Bir şeyi mi kaçırıyorum? then you will find your previous commits are all recorded in the 'Your ContributionsCalendar` <- Bu ifade doğru görünmüyor. Bu adım zaman alıyor mu?
Michael Harley

Github'ın desteğiyle iletişime geçerek katkı sorunumu çözdüm. Evet, e-posta adresimin doğru olduğunu kontrol ettim.
Michael Harley

6

İOS geliştirme için Xcode 9'da da aynı sorunu yaşadım.

Github'da, işlem yapmayan bir yazar fark ettim. görüntü açıklamasını buraya girin

Xcode'da taahhütler yapmış olsam bile. 'Katkılarınız' Takviminde hiç katkı yoktu.

Çözüm:

Committer Adını ve E -postayı Global Olarak Değiştirin Kaydetmeler
için kullanılan e-posta adresi GitHub hesabınızla ilişkilendirilmelidir.

Terminalde:

$ git config --global user.name "Full Name"
$ git config --global user.email "fullname@gmail.com"

Ayrıca bkz. GitHub Yardımı: Kaydetme e-posta adresinizi Git'te ayarlama


4

İşlemlerimin birçoğunun gerçekleşmesinden sonra (yeni taahhütler düzgün bir şekilde gösteriliyordu) ve yalnızca e-posta adresini profilimden kaldırarak bunların görünmesini sağlayan özel bir depodaki taahhütler için atıfları görme sorunları yaşadım, ardından aynı e-posta adresini yeniden ekleyin.

Bunu yapmak GitHub'daki bir önbelleğe alma sorununu çözmüş gibi görünüyor.


4

Daha önce GitHub'da e-posta adresimi değiştirdim ve yerel adresi de değiştirmeyi unuttum.


2

Aynı sorunu yaşadım ve bu benim için çalıştı: GitHub katkı denetleyicisi, aşağıdaki bağlantı. Kurulduktan sonra, program, son taahhütlerinizin geçerliliğini kontrol eder ve size, kuralların / kuralların kırmızı renkte karşılanmadığı bir kurallar listesi verir.

Benim sorunum GitHub'ın bir Cygwin terminal adını bir e-posta adresi olarak kullanmasıydı, bu yüzden Cygwin terminal adımı profilime ekledim ve tüm son taahhütler GitHub takvimime eklendi.

Taahhüdünüz katkı olarak sayılmayacaktır! Aşağıdaki ayrıntıları kontrol edin: https://github.com/jdennes/contribution-checker


2

git configDoğru e-posta adresi yapılandırılmış olsa bile e-postamı SourceTree ayarlarına manuel olarak eklemek zorunda kaldım. Ancak bunu yaptıktan sonra GitHub, taahhütlerimi katkı grafiğime kaydetmeye başladı.

SourceTree Ayarları Ekran Görüntüsü



2

Tam olarak aynı sorunu yaşadım, çünkü yerel git'imdeki e-posta GitHub hesabımdaki e-posta ile eşleşmiyor.

E-postayı yerel makinenizde güncellemek için:

git config --global user.email "your.email@email.com"

Tüm kaydetmelerinizin github'ınızda güncellendiğini doğrulayın, aksi takdirde kaydetmeyi tıklayarak ve kaydetme url'sinin sonuna ".patch" ekleyerek kaydetmenin hangi e-postayla ilişkilendirildiğini görmek için tek tek kaydetmeleri kontrol edebilirsiniz:

https://github.com/username/repoName/commit/9fbe83f71cfc3503.patch

Şimdi tek yapmanız gereken, gördüğünüz o e-postayı hesabınıza eklemek. (Doğrulanmasına gerek yoktur)

İşlemi tekrar kontrol edin ve kullanıcı adınızı ve kredinizi görmelisiniz :)


2

GitHub, Yardımlarında katkılarınızı nasıl ölçtüğünü açıkça belirtir :

  • Sorunlar ve Çekme Talepleri:

    • Sadece bağımsız bir depoda açılmışlarsa, çatal değil
  • Taahhütler:
    Yalnızca aşağıdaki koşulların tümünü karşılıyorlarsa:

    • İşlemler için kullanılan e-posta adresi GitHub hesabınızla ilişkilendirilir

    • İşlemler fork değil, bağımsız bir depoda yapıldı

    • Taahhütler yapıldı:

      • Deponun varsayılan dalında (genellikle ana)
      • Gh-sayfalar dalında (proje siteleri olan depolar için)

    Ek olarak, aşağıdakilerden en az birinin doğru olması gerekir:

    • Arşivde bir ortak çalışansınız veya arşivin sahibi olan kuruluşun bir üyesisiniz
    • Depoyu çatalladınız
    • Depoda bir çekme isteği veya sorunu açtınız
    • Depoya yıldız verdiniz

Not: Katkı olarak sayılma gereksinimlerini karşılayan bir taahhütte bulunduktan sonra, katkının katkı grafiğinizde görünmesi için 24 saate kadar beklemeniz gerekebilir.


1

E-postamı komut satırından tekrar ekledim ve sorunu çözdü:

$ git config user.email "myemil@mydomain.com"

Bir başka konu da şubenizle ilgili. Maser'in yanında başka bir dal oluşturursanız ve bu dalı itmeye çalışırsanız bu sorun ortaya çıkabilir. Benim durumumda ustalaşmak için zorlamaya başladım ve çözümü aldım.


1

Aynı sorunu yaşadım ve çözüm oldukça basitti. Genel e-posta yapılandırması için yanlış e-posta ayarladım

git config --global user.email "email@yourmail.com"

Yukarıdaki e-postanın ve GitHub hesabı e-postanızın aynı olduğundan emin olun


1

GitHub profilinin kullanıcı adını yerel ortamımda git kullanıcı adım olarak kullanarak benzer sorunu düzelttim.

Örnek olarak,

https://github.com/susithrj

global kullanıcı adını yerel git yapılandırmanızda susithrj olarak ayarlayın .

git config --global user.name "susithrj"


0

Yakın zamanda dizüstü bilgisayarımı geri yüklemek zorunda kaldım ve e-postamı git olarak yeniden yapılandırmayı unuttum. Dizüstü bilgisayar kullanıcı adım git one'ıma benziyor, bu yüzden körü körüne taahhütlerimin doğru şekilde ilişkilendirildiğini düşündüm. Gönderildiği gibi, genel e-posta ayarlarınızı değiştirebilirsiniz. Ancak, projenizdeki yanlış atıfta bulunulan taahhütleri düzeltmek istiyorsanız, bu komut dosyasını gcaçalıştırarak, geçmiş taahhütlerinizin yazarlığını değiştirmek için git proje dizininizde çalıştırabileceğiniz bir takma ad oluşturabilirsiniz .

Dizininizden şunu ~ekleyin:

$ cat <<EOF >> ~/.aliases
 function git_change_authorship {
 git filter-branch -f --env-filter "
  GIT_AUTHOR_NAME=\"\$1\"
  GIT_AUTHOR_EMAIL=\"\$2\"
  GIT_COMMITTER_NAME=\"\$1\"
  GIT_COMMITTER_EMAIL=\"\$2\"
 "
 }
 alias gca=git_change_authorship
 EOF

 $ source ~/.aliases

sonra git proje dizininizde çalıştırın gca <git username> <git email address>

Dikkat et! Bunu sadece tek sorumlu olduğum kendi kişisel projelerimde kullandım. Grup projeleriyle test etme şansım olmadı, bu yüzden dikkatlice ilerleyin.


0

Depomun "Insights" bölümünü / sekmesini kontrol ettim ve mevcut kullanıcım yerine anonim bir kullanıcı vardı (o da bendim), bu yüzden mevcut bilgisayarımdaki e-posta yapılandırmasını github ile kullandığım bir şekilde değiştirdim yukarıda tanımlandığı gibi.

Insigths


0

E-postanızı gizli tutabilir ve yine de katkıların takviminizde görünmesini sağlayabilirsiniz. E-posta adresinizi github e-posta ayarlarından gizli tutmayı seçebilir ve git yapılandırmanızdaki github noreply e-posta adresini kullanabilirsiniz .

git config user.email "xxxxxxxxxxx@users.noreply.github.com"

Not

Benim için e- postamı github e-posta ayarlarından gizli tutmayı seçtim . Bu bana bir hata verdi

Your push would publish a private email address.

depomu zorlamaya çalışırken. E-postayı kaldırdım. Bunun ardından itmek başarılı oldu ancak katkılar takvimime kaydedilmedi.

E-posta ayarları sayfasında GitHub tarafından belirtildiği gibi

Herkese açık profil e-postanızı kaldıracağız ve web tabanlı Git işlemleri (ör. Düzenlemeler ve birleştirme) gerçekleştirirken ve sizin adınıza e-posta gönderirken xxxxxxxxxxx@users.noreply.github.com'u kullanacağız. Komut satırı Git işlemlerinin özel e-postanızı kullanmasını istiyorsanız , e-postanızı Git'te ayarlamalısınız .


0

Aynı sorunu yaşadım, e-postayı ayarlayarak benimki düzeltildi

git config --global user.email jonathan.m2ndoza@gmail.com

Bu yardımcı olur umarım.


0

Github'daki "Katkı Takvimi" veya "Etkinlik özeti" yalnızca github hesabına kaydedilen posta adresiyle ilgili taahhütleri kaydeder.

Gelecekteki tüm taahhütler için posta adresini değiştirin

Bu konudaki diğer birçok kişi tarafından daha önce de belirtildiği gibi, yerel olarak kaydedilmiş mevcut e-posta adresini şu şekilde arayın:

git config user.email

Github'daki postayla eşleşmiyorsa, şunu kullanarak değiştirin:

git config --global user.email my_email@gmail.com

Bu, gelecekteki tüm taahhütler için posta adresini global olarak değiştirecek, ancak geçmiş olanlar için "Katkılara Genel Bakış" ı etkilemeyecektir. Genişletilmiş bir açıklama için resmi belgeleri takip edebilirsiniz .

Geçmiş kayıtların genel görünümünü güncellemek için posta adresini değiştirin

Geçmiş taahhütlerinizin çoğunun Github "Katkılara Genel Bakış" bölümünde doğru şekilde kaydedilmediğini fark ediyorsunuz: görüntü açıklamasını buraya girin

Bunu değiştirmek için, resmi github belgelerinde açıklanan adımları izleyerek depoların yazar bilgilerini değiştirebilirsiniz .

Kısa bir özet:

  1. Git bash'ı aç
  2. Çıplak bir depoyu klonlayın

    git clone --bare https://github.com/user/repo.git
    cd repo.git
    
  3. Değişkenleri değiştirdikten sonra git bash konsoluna aşağıdaki kodu yapıştırın OLD_EMAIL, CORRECT_NAMEve CORRECT_EMAIL:

    #!/bin/sh
    
    git filter-branch --env-filter '
    
    OLD_EMAIL="your-old-email@example.com"
    CORRECT_NAME="Your Correct Name"
    CORRECT_EMAIL="your-correct-email@example.com"
    
    if [ "$GIT_COMMITTER_EMAIL" = "$OLD_EMAIL" ]
    then
    export GIT_COMMITTER_NAME="$CORRECT_NAME"
    export GIT_COMMITTER_EMAIL="$CORRECT_EMAIL"
    fi
    if [ "$GIT_AUTHOR_EMAIL" = "$OLD_EMAIL" ]
    then
    export GIT_AUTHOR_NAME="$CORRECT_NAME"
    export GIT_AUTHOR_EMAIL="$CORRECT_EMAIL"
    fi
    ' --tag-name-filter cat -- --branches --tags
    
  4. Komut dosyasını çalıştırmak için enter tuşuna basın

  5. Düzeltilmiş geçmişi github'a aktarın
    git push --force --tags origin 'refs/heads/*'
    

Bu prosedür "Katkılara Genel Bakış" ı güncellemeli ve şimdi daha önce gösterilmeyen taahhütleri de göstermelidir: görüntü açıklamasını buraya girin

Uyarı : Bu eylem, arşivinizin geçmişine zarar verir. Bir arşiv üzerinde başkalarıyla işbirliği yapıyorsanız, yayınlanan geçmişi yeniden yazmak kötü bir uygulama olarak kabul edilir. Bunu sadece acil durumlarda yapmalısınız.


0

Kullanıcı bayrağını kullandığınızdan emin olun. Örneğin git push -u origin yerine git push

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.