Las confirmaciones de GitHub no se registran en el calendario "Tus contribuciones"


94

He estado realizando compromisos continuos con mis GitHubrepositorios desde mi shell de Linux y se muestran muy bien en el sitio web como deberían. El único problema es que la sección "Tus contribuciones" no muestra ninguna actividad reciente. Tengo un cuadrado verde de algún día de noviembre que no sé cómo lo obtuve, pero todas las demás contribuciones no aparecen en el calendario (pero nuevamente, aparecen en sus repositorios.
¿Qué me estoy perdiendo aquí?

Mi sitio de github


1
¿Te comprometes con un repositorio privado?
loco

no, todos mis repos son públicos
Roey Angel

2
Esta pregunta es mejor para las aplicaciones web (ya que no se trata de codificación, sino de cómo funcionan la interfaz / cuentas) o directamente a GitHub: Soporte
aleatorio

En realidad, @harsh dio la mejor respuesta
Ali Saberi

Respuestas:


48

Este es un problema de Github donde a veces sus mecanismos de actualización no funcionan y se convierte en un "caché obsoleto". Esto no es nada serio, simplemente envíe un correo electrónico a support@github.com describiendo el problema y lo solucionarán de inmediato.


2
Github ahora requiere que se creen nuevas solicitudes de soporte utilizando su sitio web de soporte: support.github.com/contact
Naren

70

de git

Acabo de echar un vistazo a sus contribuciones para el repositorio de GoTime2 y parece que ha estado enviando confirmaciones a la rama de diseño.

La razón por la que esas contribuciones no se muestran es que solo hacemos un seguimiento de las contribuciones de confirmación cuando se realizan en la rama predeterminada del repositorio o la rama gh-pages:

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

Una vez que sus contribuciones se fusionen en las páginas predeterminadas o gh, se le acreditarán en la fecha en que las creó.

así que en mi caso tuve que fusionar mi rama 'diseño' con la rama 'maestra' para ver las 'sus contribuciones' aparecer en el calendario.


2
Trabajo mucho en mi propia rama y luego me fusiono con la rama 'maestra', pero mis contribuciones aún no aparecen. ¿Algunas ideas? Editar: por alguna razón, mi dirección de correo electrónico se configuró en un correo electrónico diferente en la aplicación que uso para administrar mis repositorios de git (SourceTree). Agregué esa dirección de correo electrónico a mi cuenta de GitHub, pero aún no veo ningún cambio. Espero que les lleve un tiempo volver a calcular las estadísticas.
robert.bo.roth

4
@ robert.bo.roth ~ "Una vez que vincule los correos electrónicos, es posible que deba ponerse en contacto con el soporte para que puedan completar sus contribuciones anteriores". Fuente - git.io/NtUV5A
ikaruss

¿Qué pasa si hice confirmaciones en otra rama y luego el propietario del repositorio las fusionó en la masterrama? ¿Se registrarán mis contribuciones en el calendario "Sus contribuciones"?
soshial

Tarde, por lo que probablemente ahora lo sepas, pero en caso de que esto sea beneficioso para alguien más: @soshial sí, este es el caso :) tiene fecha anterior y reconoce después de que se han fusionado, por lo que he notado.
Ashley Davies

Me ha pasado lo mismo. Después de fusionarse con la rama predeterminada, las contribuciones aparecieron de inmediato. Gracias
netishix

69

Para mí, este problema se debió a que me comprometí desde mi computadora de trabajo donde estaba usando un correo electrónico diferente en mi gitconfig. Agregar mi dirección de correo electrónico de trabajo a mi cuenta de github no hizo que las confirmaciones pasadas aparecieran en el resumen, pero las nuevas confirmaciones ahora aparecen como deberían.

Puede encontrar la dirección de correo electrónico que está utilizando para un repositorio con git config user.email.


4
Tengo la misma situación, esto es extraño, si adjuntan el compromiso al ID de usuario en lugar del correo electrónico, que podríamos cambiar.
Mingtao Zhang

1
Esta es la respuesta más probable: he visto que esto suceda antes a pesar de que las confirmaciones y las relaciones públicas están pasando bien
planetguru

Muchas gracias, este era exactamente el problema que estaba pasando. Hice git config user.email <my email>y empujó una confirmación, y ahora está rastreando mis confirmaciones. Escribiré su apoyo a continuación, ya que tengo días en los que trabajé 14 horas, haciendo un nuevo repositorio y obteniendo una versión alfa completa escrita, pero solo tengo actividad para los problemas que abrí en su contra.
Josh de Qaribou

@turtlemonvh Es posible vincular diferentes correos electrónicos a diferentes repositorios. Entonces, si estaba usando su computadora de trabajo pero tiene un repositorio de proyecto personal "personal_project" y otro repositorio "work_project", puede configurar ID de correo electrónico separados para ambos. Vaya al directorio de repositorios en la terminal y haga lo siguiente. $pwd personal_project $git config user.email "your personal email" $pwd work_project $git config user.email "work email"Eso debería contar sus contribuciones correctamente.
Chaitra Suresh

Esta probablemente debería ser la respuesta aceptada. Para tu información, puedes cambiar el historial de git. Aquí hay instrucciones de github: Changing -author-info
Ben


16

¡Esto hizo el truco! Solo usé $ git config user.email "my email address used on my git repo"y funcionó.


12

"Debe confirmar los cambios con la misma identificación de correo electrónico que utilizó para iniciar sesión en su cuenta de github"

Cómo resolver:

  • Cambie la identificación de correo electrónico global para todos los repositorios usando el siguiente comando.

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

  • O cambie la identificación de correo electrónico de un repositorio en particular. Desde el interior del repositorio particular, ejecute el siguiente comando

git config user.email abc@xyz.com

  • O en el repositorio abra el archivo .git / config y edite

email = abc@xyz.com nombre = abc

otras causas se pueden encontrar aquí https://help.github.com/articles/why-are-my-contributions-not-showing-up-on-my-profile/


11

Asegúrese de que su correo electrónico local sea exactamente el mismo que el de la cuenta.

Vaya a la terminal y dentro de la carpeta en la que está presionando las confirmaciones, ejecute:

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

git config --system user.email
  #=> 

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

Me estaba pasando algo parecido. El correo electrónico de mi cuenta era el de --global, pero mi --local era ligeramente diferente, no tenía '.'.

(En Gmail no hay diferencia entre esos correos electrónicos, funcionan exactamente igual).


1
Esto funcionó para mí. Mi global era correcto, pero el sistema y los correos electrónicos locales estaban en blanco. Agregué esos dos y ahora aparecen mis confirmaciones.
KellyCode

10

por lo que esto suele ocurrir debido a una gran cantidad de factores, por lo que debes visitar esta ayuda de GitHub

Los errores más comunes que encontré fueron:

  1. El correo electrónico no está configurado correctamente en la máquina local. (su computadora portátil / pc).
  2. Bifurcando.
  3. No usar la rama predeterminada o gh-pages para la confirmación.

Personalmente tuve el problema 1 recientemente, para el cual fui a mi terminal / cmd / cli y configuré mi dirección de correo electrónico localmente ejecutando este comando

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

Una vez hecho esto, intente ejecutar esta configuración nuevamente así:

git config --global user.email

Debería poder ver:

yourname@email.address

Si esto fue correcto, ha configurado correctamente su máquina local con su repositorio público global. Ahora su próxima confirmación se acreditará a su calendario.


Gracias por la corrección @aasmin ali
geekidharsh

7

Quizás Github había solucionado este problema. Hay una forma sencilla, vaya a la configuración de correo electrónico de github.com: https://github.com/settings/emails

Configuración personal -> Correos electrónicos

Puede agregar una dirección de correo electrónico allí y verificar su dirección de correo electrónico más reciente con el envío de un enlace de verificación, luego encontrará que sus confirmaciones anteriores están registradas en el calendario 'Sus contribuciones'. Y esta verificación de correo electrónico también le permitirá recibir notificaciones y restablecimientos de contraseña de GitHub.

Su nueva dirección de correo electrónico se utilizará para notificaciones relacionadas con la cuenta (por ejemplo, cambios en la cuenta y recibos de facturación), así como para cualquier operación de GitHub basada en la web (por ejemplo, ediciones y fusiones).


Es bueno ver todo mi arduo trabajo finalmente mostrado nuevamente ... :)
Trabajé el

Esto es lo que hice y funcionó de maravilla. ¡Vi todas mis antiguas confirmaciones que pensé que "faltaban"!
Afflatus

He hecho esto. Pero todavía no puedo ver mi trabajo en el gráfico. :( ¿Me estoy perdiendo algo? then you will find your previous commits are all recorded in the 'Your ContributionsCalendar` <- Esta declaración no parece ser correcta. ¿Este paso lleva tiempo?
Michael Harley

He solucionado mi problema de contribución, poniéndome en contacto con el soporte de Github. Sí, he comprobado que mi dirección de correo electrónico es correcta.
Michael Harley

6

Tuve el mismo problema en Xcode 9 para el desarrollo de iOS.

En Github, noté un autor no comprometido. ingrese la descripción de la imagen aquí

Aunque hice confirmaciones en Xcode. No hubo contribuciones en el calendario "Sus contribuciones".

Solución:

Cambiar el nombre y el correo electrónico del remitente globalmente
La dirección de correo electrónico utilizada para las confirmaciones debe estar asociada con su cuenta de GitHub.

En la Terminal:

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

Consulte también la Ayuda de GitHub: Configuración de su dirección de correo electrónico de confirmación en Git


4

Tuve problemas para ver las atribuciones de las confirmaciones en un repositorio privado que se agregó a mi organización después de que ocurrieron muchas de mis confirmaciones (las nuevas confirmaciones aparecían correctamente) y solo pude hacer que aparecieran eliminando la dirección de correo electrónico de mi perfil. luego vuelva a agregar la misma dirección de correo electrónico.

Parece que hacer esto resolvió un problema de almacenamiento en caché dentro de GitHub.


4

Resulta que anteriormente cambié mi dirección de correo electrónico en GitHub y también olvidé cambiar la local.


2

Tuve el mismo problema y esto funcionó para mí: Verificador de contribución de GitHub, enlace a continuación. Una vez instalado, el programa verifica la validez de sus confirmaciones recientes y le brinda una lista de reglas, con la regla / reglas que no se cumplen en rojo.

Mi problema era que GitHub estaba usando un nombre de terminal Cygwin como dirección de correo electrónico, así que simplemente agregué el nombre de mi terminal Cygwin a mi perfil y todas las confirmaciones recientes se agregaron a mi calendario de GitHub.

¡Tu compromiso no se contará como una contribución! Verifique los detalles a continuación: https://github.com/jdennes/contribution-checker


2

Tuve que agregar manualmente mi correo electrónico a la configuración de SourceTree incluso si git configtenía configurada la dirección de correo electrónico correcta. Solo después de hacer esto, GitHub comenzó a registrar mis confirmaciones en mi gráfico de contribución.

Captura de pantalla de configuración de SourceTree



2

Tuve exactamente el mismo problema, resulta que es porque el correo electrónico en mi git local no coincide con el correo electrónico en mi cuenta de GitHub.

Para actualizar el correo electrónico en su máquina local:

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

Verifique que todas sus confirmaciones estén actualizadas en su github, si no, puede verificar las confirmaciones individuales para ver con qué correo electrónico está asociada la confirmación haciendo clic en la confirmación y agregando ".patch" al final de la URL de confirmación de esta manera:

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

Ahora todo lo que tiene que hacer es agregar ese correo electrónico que ve a su cuenta (no necesita ser verificado)

Verifique la confirmación nuevamente y debería ver su nombre de usuario y acreditado :)


2

GitHub establece claramente cómo miden sus contribuciones en su Ayuda :

  • Problemas y solicitudes de extracción:

    • Solo si se abrieron en un repositorio independiente, no en una bifurcación
  • Se compromete:
    solo si cumplen todas las condiciones siguientes:

    • La dirección de correo electrónico utilizada para las confirmaciones está asociada con su cuenta de GitHub

    • Las confirmaciones se realizaron en un repositorio independiente, no en una bifurcación

    • Las confirmaciones se realizaron:

      • En la rama predeterminada del repositorio (generalmente maestro)
      • En la rama gh-pages (para repositorios con sitios de proyectos)

    Además, al menos uno de los siguientes debe ser verdadero:

    • Eres un colaborador en el repositorio o eres miembro de la organización propietaria del repositorio
    • Has bifurcado el repositorio
    • Ha abierto una solicitud de extracción o un problema en el repositorio.
    • Has destacado el repositorio

Nota: Después de realizar un compromiso que cumpla con los requisitos para contar como una contribución, es posible que deba esperar hasta 24 horas para ver la contribución aparecer en su gráfico de contribuciones.


1

Acabo de agregar mi correo electrónico nuevamente a través de la línea de comando y resuelve el problema:

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

Y otro tema tiene que ver con tu sucursal. Si crea otra rama además de maser e intenta impulsar esa rama, este problema podría ocurrir. En mi caso, comencé a presionar para dominar y obtuve la solución.


1

Tuve el mismo problema y la solución fue bastante simple. Tenía configurado el correo electrónico incorrecto para la configuración de correo electrónico global

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

Solo asegúrese de que el correo electrónico anterior y el correo electrónico de su cuenta de GitHub sean los mismos


1

Solucioné un problema similar usando el nombre de usuario del perfil de GitHub como mi nombre de usuario de git en mi entorno local.

Como ejemplo,

https://github.com/susithrj

establezca el nombre de usuario global como susithrj en su configuración de git local.

git config --global user.name "susithrj"


0

Tuve que restaurar mi computadora portátil recientemente y olvidé reconfigurar mi correo electrónico a git. El nombre de usuario de mi computadora portátil se parece a mi git one, así que pensé ciegamente que mis confirmaciones se estaban atribuyendo correctamente. Como se publicó, puede cambiar la configuración global de correo electrónico. Sin embargo, si desea corregir las confirmaciones atribuidas incorrectamente en su proyecto, puede usar esta ejecución de este script para crear un aliasgca que pueda ejecutar en el directorio de su proyecto git para cambiar la autoría de sus confirmaciones pasadas.

Desde su ~directorio, agregue:

$ 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

luego en el directorio de tu proyecto git ejecuta gca <git username> <git email address>

¡Aviso! Solo he usado esto en mis propios proyectos personales en los que he sido el único responsable. No he tenido la oportunidad de probarlo con proyectos grupales, así que proceda con cautela.


0

Revisé la sección / pestaña "Insights" de mi repositorio, y en lugar de mi usuario actual, había un usuario anónimo (que también era yo), así que cambié la configuración del correo electrónico en mi computadora actual a la que uso github como se describió anteriormente.

Insigths


0

Puede mantener la privacidad de su correo electrónico y que las contribuciones aparezcan en su calendario. Puede elegir mantener su dirección de correo electrónico privada desde la configuración de correo electrónico de github y usar la dirección de correo electrónico de github noreply en su configuración de git.

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

Nota

Para mí, había elegido mantener mi correo electrónico privado desde la configuración de correo electrónico de github . Esto me dio un error

Your push would publish a private email address.

al intentar enviar a mi repositorio. Eliminé el correo electrónico. Empujar después de esto fue un éxito, pero las contribuciones no se registraron en mi calendario.

Como lo menciona GitHub en la página de configuración de correo electrónico

Eliminaremos el correo electrónico de su perfil público y usaremos xxxxxxxxxxx@users.noreply.github.com al realizar operaciones de Git basadas en la web (por ejemplo, ediciones y fusiones) y enviar correos electrónicos en su nombre. Si desea que las operaciones de línea de comandos de Git utilicen su correo electrónico privado, debe configurar su correo electrónico en Git .


0

Tuve el mismo problema, el mío se solucionó configurando el correo electrónico

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

Espero que esto ayude.


0

El "Calendario de contribuciones" o "Descripción general de la actividad" en github solo registra las confirmaciones que están relacionadas con la dirección de correo que está registrada en la cuenta de github.

Cambiar la dirección de correo para todas las confirmaciones futuras

Como ya han señalado muchos otros en este hilo, busque la dirección de correo electrónico actual guardada localmente mediante:

git config user.email

Si no coincide con el correo en github, cámbielo usando:

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

Esto cambiará globalmente la dirección de correo para todas las confirmaciones futuras, pero no afectará el "Resumen de contribuciones" de las anteriores. Puede seguir los documentos oficiales para obtener una descripción detallada.

Cambie la dirección de correo electrónico para actualizar la descripción general de las confirmaciones pasadas

Te das cuenta de que muchas de tus confirmaciones pasadas no se han registrado correctamente en el "Resumen de contribuciones" de Github: ingrese la descripción de la imagen aquí

Para cambiar eso, puede cambiar la información del autor de los repositorios siguiendo los pasos explicados en los documentos oficiales de github .

Un breve resumen:

  1. Abrir git bash
  2. Clonar un repositorio vacío

    git clone --bare https://github.com/user/repo.git
    cd repo.git
    
  3. Pegar el código siguiente en la consola de fiesta git después de cambiar las variables OLD_EMAIL, CORRECT_NAMEy 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. Presione enter para ejecutar el script

  5. Empuje el historial corregido a github
    git push --force --tags origin 'refs/heads/*'
    

Este procedimiento debería actualizar el "Resumen de contribuciones" y ahora también mostrar las confirmaciones que no se mostraban antes: ingrese la descripción de la imagen aquí

Advertencia : esta acción es destructiva para el historial de su repositorio. Si está colaborando en un repositorio con otras personas, se considera una mala práctica reescribir el historial publicado. Solo debe hacer esto en caso de emergencia.


0

Asegúrese de utilizar la bandera de usuario. Por ejemplo en git push -u origin lugar de git push

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.