GitHubのコミットは「投稿」カレンダーに記録されません


99

私はGitHubLinuxシェルからリポジトリに継続的にコミットしてきましたが、それらはWebサイトに適切に表示されます。唯一の問題は、「あなたの貢献」セクションに最近のアクティビティが表示されないことです。11月のある日から緑色の四角が1つあり、どうやって取得したのかわかりませんが、他のすべての投稿はカレンダーに表示されません(ただし 、リポジトリに表示されます。
ここで何が欠けていますか?

私のgithubサイト


1
プライベートリポジトリにコミットしますか?
madhead 2013年

いいえ、私のリポジトリはすべて公開されています
Roey Angel 2013

2
この質問は、Webアプリ(コーディングではなく、インターフェイス/アカウントの動作方法を扱っているため)またはGitHub:Supportに直接アクセスする場合に適しています
ランダムな

実際、@ harshが最良の答えを出しました
Ali Saberi

回答:


49

これはGithubの問題であり、更新メカニズムが機能せず、「古いキャッシュ」に変わることがあります。これは深刻なことではありません。問題を説明するメールをsupport@github.comに送信するだけで、すぐに修正されます。


2
Githubでは、サポートWebサイトを使用して新しいサポートリクエストを作成する必要があります: support.github.com/contact
Naren 2010年

77

私にとって、この問題は、gitconfigで別の電子メールを使用していた仕事用コンピューターからコミットしたことが原因でした。仕事用のメールアドレスをgithubアカウントに追加しても、過去のコミットは概要に表示されませんでしたが、新しいコミットが表示されるようになりました。

リポジトリに使用しているメールアドレスは。で見つけることができますgit config user.email


4
私も同じ状況にありますが、これは奇妙なことです。コミットを電子メールではなくユーザーIDに添付すると、変更される可能性があります。
Mingtao Zhang 2014

1
これは、最も可能性の高い答えは-私は、これはコミットとPRのは、うまく通過しているにもかかわらず、前に起こる見てきました-
planetguru

どうもありがとう-これはまさに私が起こっていた問題でした。をgit config user.email <my email>実行してコミットをプッシュすると、コミットが追跡されます。14時間働いて、新しいリポジトリを作成し、アルファ版全体を作成する日があるので、次に彼らのサポートを書きますが、私はそれに対して開いた問題に対する活動しかありません。
Qaribouからジョシュ

@turtlemonvh異なるメールを異なるリポジトリにリンクすることが可能です。したがって、仕事用のコンピューターを使用していて、個人用プロジェクトリポジトリ「personal_project」と別のリポジトリ「work_project」がある場合は、両方に個別の電子メールIDを構成できます。ターミナルのリポジトリディレクトリに移動し、次の手順を実行します。 $pwd personal_project $git config user.email "your personal email" $pwd work_project $git config user.email "work email"これにより、貢献が正しくカウントされます。
Chaitra Suresh

これはおそらく受け入れの答えであるはずです。参考までに、gitの履歴を変更できます。ここではgithubのからの指示は、次のとおり変更-著者情報
ベン・

74

gitから

GoTime2リポジトリへの貢献を覗いてみたところ、レイアウトブランチにコミットをプッシュしているようです。

これらのコントリビューションが表示されない理由は、リポジトリのデフォルトブランチまたはgh-pagesブランチに対して行われた場合にのみコミットコントリビューションを追跡するためです。

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

あなたの貢献がデフォルトまたはgh-ページにマージされると、あなたはそれらを作成した日にそれらのクレジットを受け取ります。

そのため、私の場合、「layout」ブランチを「master」ブランチとマージして、「yourcontributions」がカレンダーに表示されるようにする必要がありました。


2
私は自分のブランチでよく働いてから、「master」ブランチにマージしますが、私の貢献はまだ表示されていません。何か案は?編集:何らかの理由で、gitリポジトリの管理に使用するアプリケーション(SourceTree)でメールアドレスが別のメールに設定されました。そのメールアドレスをGitHubアカウントに追加しましたが、まだ変更がありません。彼らが統計を再計算するのに少し時間がかかることを願っています。
robert.bo.roth 2014年

4
@ robert.bo.roth〜 "メールをリンクしたら、サポートに連絡して、以前の投稿を埋め戻すことができるようにする必要がある場合があります。" ソース- git.io/NtUV5A
ikaruss

別のブランチにコミットした後、リポジトリの所有者がそれらをmasterブランチにマージした場合はどうなりますか。私の貢献は「あなたの貢献」カレンダーに記録されますか?
soshial 2016

遅いので、おそらく今は知っているでしょうが、これが他の誰かにとって有益である場合:@soshialはい、これは事実です:)私が気付いた限りでは、それらがマージされた後、バックデートして確認します。
Ashley Davies

同じことが私にも起こりました。デフォルトのブランチにマージした後、貢献はすぐに現れました。ありがとう
netishix


19

これでうまくいきました!私はちょうど使用し$ git config user.email "my email address used on my git repo"、それは動作しました。


14

「githubアカウントへのログインに使用したのと同じメールIDで変更をコミットする必要があります」

の解き方:

  • 次のコマンドを使用して、すべてのリポジトリのグローバル電子メールIDを変更します。

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

  • または、特定のリポジトリの電子メールIDを変更します。特定のリポジトリ内からコマンドの下で実行

git config user.email abc@xyz.com

  • または、リポジトリで.git / configファイルを開いて編集します

メール=abc@xyz.com名前= abc

他の原因はここで見つけることができます https://help.github.com/articles/why-are-my-contributions-not-showing-up-on-my-profile/


12

ローカルメールがアカウントのものとまったく同じであることを確認してください。

ターミナルに移動し、コミットをプッシュしているフォルダー内で、次のコマンドを実行します。

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

git config --system user.email
  #=> 

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

同様のことが私に起こっていました。私のアカウントのメールアドレスは--globalのものでしたが、私の--localは少し異なり、「。」はありませんでした。

(Gmailでは、これらのメールに違いはなく、まったく同じように機能します)。


1
これは私のために働いた。私のグローバルは正しかったが、システムとローカルの電子メールは空白でした。これら2つを追加すると、コミットが表示されます。
KellyCode

11

したがって、これは通常、このGitHubヘルプにアクセスする必要がある多くの要因が原因で発生します

私が見つけた最も一般的な間違いは次のとおりです。

  1. ローカルマシンで電子メールが正しく構成されていません。(あなたのラップトップ/ PC)。
  2. フォーク。
  3. コミットにデフォルトまたはgh-pagesブランチを使用しません。

私は最近、個人的に問題1を抱えていました。そのために、terminal / cmd / cliに移動し、このコマンドを実行してローカルで電子メールアドレスを構成しました。

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

それが完了したら、次のようにこの構成を再度実行してみてください。

git config --global user.email

あなたは見ることができるはずです:

yourname@email.address

これが正しければ、グローバルパブリックリポジトリを使用してローカルマシンを正常に構成できています。これで、次のコミットがカレンダーにクレジットされます。


アリ@aasmin修正してくれてありがとう
geekidharsh

8

たぶんGithubがこの問題を修正したのでしょう。簡単な方法が1つあります。github.comのメール設定にアクセスしてくださいhttps//github.com/settings/emails

個人設定->メール

そこにメールアドレスを追加し、確認リンクを送信して新しいメールアドレスを確認すると、以前のコミットがすべて「投稿」カレンダーに記録されていることがわかります。また、このメール確認により、GitHubから通知とパスワードのリセットを受け取ることもできます。

新しいメールアドレスは、アカウント関連の通知(アカウントの変更や請求書の領収書など)や、ウェブベースのGitHub操作(編集やマージなど)に使用されます。


私のすべての努力がついに再び示されるのを見て
働きました

これは私がしたことであり、それは魅力のように機能しました。「欠けている」と思っていた古いコミットをすべて見ました。
アフラタス2017年

私はこれをしました。しかし、それでもグラフ上で私の仕事を見ることができません。:(アム私は何かが足りない?then you will find your previous commits are all recorded in the 'Your Contributionscalendar` < -この文は正しいとは思えないいこのステップは時間がかかります。?
マイケル・ハーレー

Githubのサポートに連絡して、投稿の問題を修正しました。はい、メールアドレスが正しいことを確認しました。
マイケル・ハーレー

7

iOS開発用のXcode9でも同じ問題が発生しました。

Githubで、コミッターではない作者に気づきました。 ここに画像の説明を入力してください

Xcodeでコミットしたのに。'YourContributions`カレンダーに投稿はありませんでした。

解決:

コミッター名とメールをグローバルに変更
するコミットに使用するメールアドレスは、GitHubアカウントに関連付けられている必要があります。

ターミナル内:

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

GitHubヘルプ:Gitでコミットメールアドレスを設定するもご覧ください。


5

多くのコミットが発生した後に組織に追加されたプライベートリポジトリのコミットの帰属を表示する際に問題が発生し(新しいコミットが正しく表示されていました)、プロファイルからメールアドレスを削除することによってのみ表示させることができました。次に、同じメールアドレスを再度追加します。

これを行うことで、GitHub内のキャッシュの問題が解決されたようです。


5

以前にGitHubでメールアドレスを変更しましたが、ローカルのメールアドレスも変更するのを忘れていました。


3

私は同じ問題を抱えていましたが、これは私にとってはうまくいきました:GitHubコントリビューションチェッカー、以下のリンク。インストールされると、プログラムは最近のコミットの有効性をチェックし、ルールのリストを提供します。ルールは赤で示されていません。

私の問題は、GitHubがCygwin端末名をメールアドレスとして使用していたため、Cygwin端末名をプロファイルに追加したところ、最近のすべてのコミットがGitHubカレンダーに追加されました。

あなたのコミットは貢献としてカウントされません!以下の詳細を確認してください: https //github.com/jdennes/contribution-checker


3

git config正しいメールアドレスが設定されていても、手動でメールをSourceTree設定に追加する必要がありました。これを行った後でのみ、GitHubは私の貢献グラフへのコミットの記録を開始しました。

SourceTree設定のスクリーンショット



3

私はまったく同じ問題を抱えていましたが、それは私のローカルgitのメールが私のGitHubアカウントのメールと一致しないためです。

ローカルマシンで電子メールを更新するには:

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

すべてのコミットがgithubで更新されていることを確認します。更新されていない場合は、個々のコミットをチェックして、コミットをクリックし、次のようにコミットURLの末尾に「.patch」を追加することで、コミットが関連付けられているメールを確認できます。

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

今、あなたがしなければならないのはあなたがあなたのアカウントに見るその電子メールを追加することです(それは確認される必要はありません)

コミットをもう一度確認すると、ユーザー名とクレジットが表示されます:)


3

コマンドラインからメールを再度追加したところ、問題が解決しました。

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

そしてもう一つの問題はあなたのブランチについてです。メーザーの横に別のブランチを作成し、そのブランチをプッシュしようとすると、この問題が発生する可能性があります。私の場合、私はマスターにプッシュし始め、解決策を得ました。


3

GitHubは、ヘルプであなたの貢献をどのように測定するかを明確に述べています。

  • 問題とプルリクエスト:

    • フォークではなく、スタンドアロンリポジトリで開かれた場合のみ
  • コミット:
    次のすべての条件を満たす場合のみ:

    • コミットに使用されるメールアドレスは、GitHubアカウントに関連付けられています

    • コミットは、フォークではなく、スタンドアロンのリポジトリで行われました。

    • コミットが行われました:

      • リポジトリのデフォルトブランチ(通常はマスター)
      • gh-pagesブランチ内(プロジェクトサイトのあるリポジトリ用)

    さらに、次の少なくとも1つが当てはまる必要があります。

    • あなたはリポジトリの共同編集者であるか、リポジトリを所有する組織のメンバーです
    • リポジトリをフォークしました
    • リポジトリでプルリクエストまたは問題を開きました
    • リポジトリにスターを付けました

注:投稿としてカウントするための要件を満たすコミットを行った後、投稿が投稿グラフに表示されるまで最大24時間待つ必要がある場合があります


これ(リポジトリのデフォルトブランチ(通常はマスター))は、今では完全に理にかなっています。これが、私の投稿がまだ表示されない理由です。ありがとう!
マルコスブアルケ

@MarcosBuarqueどういたしまして;)
Mehdi

2

私は同じ問題を抱えていて、解決策は非常に簡単でした。グローバルメール設定に間違ったメールセットがありました

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

上記のメールアドレスとGitHubアカウントのメールアドレスが同じであることを確認してください


2

githubの「投稿カレンダー」または「アクティビティの概要」は、githubアカウントに記録されているメールアドレスに関連するコミットのみを記録しています。

今後のすべてのコミットのメールアドレスを変更する

このスレッドの他の多くの人がすでに指摘しているように、現在ローカルに保存されている電子メールアドレスを次の方法で検索します。

git config user.email

githubのメールと一致しない場合は、次を使用して変更します。

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

これにより、今後のすべてのコミットのメールアドレスがグローバルに変更されますが、過去のコミットの「投稿の概要」には影響しません。詳細な説明については、公式ドキュメントを参照してください。

メールアドレスを変更して、過去のコミットの概要を更新します

過去のコミットの多くがGithubの「投稿の概要」に正しく記録されていないことに気づきました。 ここに画像の説明を入力してください

これを変更するには、公式のgithubドキュメントで説明されている手順に従って、リポジトリの作成者情報を変更できます。

簡単な要約:

  1. gitbashを開く
  2. 裸のリポジトリのクローンを作成する

    git clone --bare https://github.com/user/repo.git
    cd repo.git
    
  3. 変数を変更した後にgit bashのコンソールに次のコードを貼り付けOLD_EMAILCORRECT_NAMEおよび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. Enterキーを押して、スクリプトを実行します

  5. 修正した履歴をgithubにプッシュします
    git push --force --tags origin 'refs/heads/*'
    

この手順により、「貢献の概要」が更新され、以前に表示されなかったコミットも表示されるようになります。 ここに画像の説明を入力してください

警告このアクションは、リポジトリの履歴を破壊します。リポジトリで他の人と共同作業している場合、公開された履歴を書き換えることは悪い習慣と見なされます。これは緊急時にのみ行う必要があります。


2

ローカル環境でGitHubプロファイルのユーザー名をgitユーザー名として使用することで、同様の問題を修正しました。

例として、

https://github.com/susithrj

ローカルのgitconfigでグローバルユーザー名をsusithrjとして設定します。

git config --global user.name "susithrj"


1

最近ラップトップを復元する必要があり、メールをgitに再構成するのを忘れました。私のラップトップのユーザー名は私のgitのユーザー名に似ているので、コミットが正しく行われていると盲目的に思っていました。投稿されたとおり、グローバルメール設定を変更できます。ただし、プロジェクトの属性ミスのコミットを修正する場合は、このスクリプトをgca実行してエイリアスを作成し、gitプロジェクトディレクトリで実行して過去のコミットの作成者を変更できます。

~ディレクトリから、次を追加します。

$ 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

次に、gitプロジェクトディレクトリで実行します gca <git username> <git email address>

注意喚起!私はこれを、私が唯一のコミッターである私自身の個人的なプロジェクトでのみ使用しました。グループプロジェクトでテストする機会がなかったので、慎重に進めてください。


1

リポジトリの[インサイト]セクション/タブを確認しましたが、現在のユーザーの代わりに匿名ユーザー(私も)がいたため、現在のコンピューターのメール設定をgithubを使用するものに変更しました上記のように。

Insigths


1

メールを非公開にして、投稿をカレンダーに表示することができます。githubのメール設定からメールアドレスを非公開にして、gitconfigでgithubnoreplyメールアドレス を使用することを選択できます。

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

注意

私の場合、githubのメール設定からメールを非公開にすることを選択しました。これは私にエラーを与えました

Your push would publish a private email address.

私のレポにプッシュしようとしている間。メールを削除しました。この後のプッシュは成功しましたが、貢献は私のカレンダーに記録されませんでした。

メール設定ページでGitHubが述べたように

WebベースのGit操作(編集やマージなど)を実行し、ユーザーに代わってメールを送信する場合は、公開プロフィールのメールを削除し、xxxxxxxxxxx @ users.noreply.github.comを使用します。コマンドラインのGit操作でプライベートメールを使用する場合は、メールをGitに設定する必要があります


1

同じ問題がありました、私のメールを設定することで修正されました

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

お役に立てれば。


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.