Cómo dejar un mensaje para un usuario de github.com

376

Necesita ayuda sobre el uso de GitHub. Me pregunto si hay una manera de comunicarse con un usuario de github.com, es decir, ¿escribirle al usuario un mensaje cuando solo se proporciona el nombre de usuario / id en su página de GitHub? ¿GitHub tiene esta característica social?

Yurij73
fuente
66
Respondiendo la pregunta (ya que ahora está cerrada): puede abrir un Issue y esperar que el propietario del repositorio le responda.
heltonbiker
1
¿Ves alguna forma de contactar a un usuario en Github? , que es sobre el tema en WebApps.SE.
chharvey
Parece más una pregunta para SuperUser para mí.
Dirk Horsten
55
Para la privacidad : para evitar que se muestre un correo electrónico personal según cualquiera de las respuestas aquí , los usuarios de Github pueden ir a Configuración-> Correo electrónico y marcar la casilla Mantener privada mi dirección de correo electrónico . Luego, deben usar git config user.emailo git config --global user.emailconfigurar su correo electrónico local de git en la dirección de correo electrónico privada de Github (<username> @ users.noreply.github.com) Todos sus compromisos, a partir de entonces, incluirán solo el correo electrónico privado "noreply". Tenga en cuenta que las confirmaciones anteriores / confirmaciones de repositorios locales con el conjunto de correo electrónico personal aún lo mostrarán.
leanne

Respuestas:

361

Aunque GitHub eliminó la función de mensajería privada, todavía hay una alternativa.

GitHub alojan repositorios git. Si el usuario con el que está dispuesto a comunicarse ha cometido algún código, hay muchas posibilidades de que pueda alcanzar su objetivo. De hecho, dentro de cada confirmación se almacena cierta información sobre el autor del cambio o el que lo aceptó.

Siempre que realmente te mueras por intercambiar con el usuario user_test

  • Muestre la página de actividad pública del usuario: https://github.com/user_test?tab=activity
  • Busque un evento que indique "prueba_usuario empujada a [rama] en [repositorio]" . Por lo general, hay buenas posibilidades, pueden haber empujado uno de sus propios compromisos. Asegúrese de que este sea el caso haciendo clic en el enlace "Ver comparación ..." y asegúrese de que el usuario aparezca como uno de los confirmadores.
  • Clone en su máquina local el repositorio al que empujaron: git clone https://github.com/..../repository.git
  • Verifique la rama que empujaron a: git checkout [branch]
  • Mostrar las últimas confirmaciones: git log -50

Como confirmador / autor, se debe mostrar un correo electrónico junto con los datos de confirmación.

Nota: Todas las advertencias relacionadas con correos electrónicos no solicitados deben aplicarse allí. Hacer no spam.

nulltoken
fuente
11
¿Qué es el usuario no tiene actividad? Quiero decir, ¿simplemente creaste una cuenta y nunca volviste a iniciar sesión?
Hossein
66
¡Guauu! ¿Por qué no usar la dirección de correo electrónico en la página de perfil del usuario de github?
mavili
24
@mavili Porque no se puede llenar. Vea la pregunta -> "¿Cuándo solo se da el nombre de usuario / id en la página de github?"
nulltoken
55
@nulltoken Leí tu respuesta con ojos llorosos. No puedo creer que este sueño se haga realidad. tanques hermano gracias ......
Esterlinkof
3
Es probable que obtenga una [email protected]dirección, en caso de que alguien realmente quiera mantener su dirección de correo electrónico privada.
tigrou
237

Este método funcionaba en marzo de 2020.

  1. Copie y pegue la siguiente línea en su navegador (no dude en marcarla): https://api.github.com/users/xxxxxxx/events/public
  2. Encuentra el nombre de usuario de GitHub para el que deseas el correo electrónico. Reemplace xxxxxxx en la URL con el nombre de usuario de GitHub de la persona. Presione enter.
  3. Presione Ctrl + F y busque "correo electrónico".

Como lo sugiere qbolec , los pasos anteriores se pueden hacer usando este fragmento:

<input id=username type="text" placeholder="github username or repo link">
<button onclick="fetch(`https://api.github.com/users/${username.value.replace(/^.*com[/]([^/]*).*$/,'$1')}/events/public`).then(e=> e.json()).then(e => [...new Set([].concat.apply([],e.filter(x => x.type==='PushEvent').map(x => x.payload.commits.map(c => c.author.email)))).values()]).then(x => results.innerText = x)">GO</button>
<div id=results></div>

Fuente: Matthew Ferree @ Sourcecon

Nikhil
fuente
77
En mi caso no contiene un correo electrónico
TheKitMurkit
77
Este método requiere que el usuario tenga alguna actividad pública
ovinophile
55
Whoa, esta respuesta es solo un tesoro para los spammers ... "Cómo encontrar la dirección de correo electrónico de cualquier usuario de github"
Alex
77
La dirección de correo electrónico en esta API proviene de la configuración de git local del usuario, no de la que ha configurado en Github. Github agregó recientemente una opción, en Configuración / Correo electrónico, para bloquear las confirmaciones que incluyen accidentalmente una dirección de correo electrónico que el usuario ha marcado como 'privada'. Y sí, el contenido revelado por API solo es aplicable a repos públicos; los datos de repositorio privado no se mostrarán.
leanne
2
@pbhj alguien debería decirle a Github, probablemente. Esta es una fuga de privacidad.
Gewure
52

Para la gente perezosa, como yo, un fragmento basado en la solución de Nikhil

<input id=username type="text" placeholder="github username or repo link">
<button onclick="fetch(`https://api.github.com/users/${username.value.replace(/^.*com[/]([^/]*).*$/,'$1')}/events/public`).then(e=> e.json()).then(e => [...new Set([].concat.apply([],e.filter(x => x.type==='PushEvent').map(x => x.payload.commits.map(c => c.author.email)))).values()]).then(x => results.innerText = x)">GO</button>
<div id=results></div>

qbolec
fuente
1
Esto dará resultados falsos si el usuario que buscó había fusionado un RP de otro usuario. En este caso, commitshabrá una matriz con el autor del RP y la fusión (usuario que fusionó el RP).
styfle
50

Simplemente cree un repositorio ficticio, abra un nuevo problema y use @xxxxx para notificar al usuario afectado.

Si el usuario tiene habilitada la notificación por correo electrónico, recibirá un correo electrónico; de lo contrario, lo notará en el próximo inicio de sesión.

No es necesario buscar direcciones de correo electrónico en commits o flujo de actividad y se respeta la privacidad.

Kay Marquardt
fuente
debería ser una respuesta más votada. Simple y al grano y, como dijiste, respeta la privacidad. ty.
JoelAZ
1
Y si la cuenta no tiene actividad, es la única forma de hacerlo que puedo encontrar.
Dave Strickler
33

Github dijo el 3 de abril de 2012:

Hoy estamos eliminando dos características. Han estado acumulando polvo por un tiempo y es hora de tirarlos: Fork Queue & Private Messaging

Fuente

MyBoon
fuente
2
Esta respuesta es obsoleta. Mire abajo para obtener respuestas actualizadas.
Nikhil
22

Aquí hay otra forma:

  • Examine el historial de confirmación de alguien (haga clic en el commitsque está al lado de la rama para ver todo el historial de confirmación)

  • Haga clic en confirmar con el nombre de usuario de la persona porque puede haber muchos de ellos

  • Entonces debería ver que la dirección web tiene un hash concatenado con la URL. Agregar .patcha esta URL de confirmación

  • Usted probablemente vea la dirección de correo electrónico de la persona que hay

Ejemplo: https://github.com/[username]/[reponame]/commit/[hash].patch

Fuente: Chris Herron @ Sourcecon

ian0411
fuente
66
Para evitar que un correo electrónico personal se muestre de esta manera, los usuarios de Github pueden ir a Configuración-> Correo electrónico y marcar la casilla Mantener privada mi dirección de correo electrónico . Luego, deben usar git config user.emailo git config --global user.emailconfigurar su correo electrónico local de git en la dirección de correo electrónico privada de Github (<username> @ users.noreply.github.com) Todos sus compromisos, a partir de entonces, incluirán solo el correo electrónico privado "noreply". Tenga en cuenta que las confirmaciones anteriores o las confirmaciones de repositorios locales con el conjunto de correo electrónico personal seguirán conteniendo la dirección de correo electrónico real.
leanne
3
Aún funciona, gracias. Espero que los spammers no abusen de esa característica.
Dennis Gorelik
5

Además de la eliminación del servicio de mensajería github , el uso a menudo no era necesario debido a que muchos githubbers se comunicaban con Twitter y abogaban por él .

La ventaja es que hay:

  • total transparencia
  • mejor cobertura
  • mejores funciones de búsqueda para tweets
  • mejor archivo, por ejemplo, por la Biblioteca del Congreso de los Estados Unidos

Probablemente no sea coincidencia que stackoverflow tampoco permita la mensajería privada, para garantizar una transparencia total. Todo el problema de la mensajería se analiza a fondo en meta-stackoverflow aquí .

Lorenz Lo Sauer
fuente
8
Ok, ¿qué hay de alguna manera de enviarles un mensaje público? Por ejemplo, quiero hacer una pregunta sobre cómo hacer una determinada cosa, y la documentación proporcionada es atroz. Sería útil para ellos responder no solo a mí, sino a cualquiera que intente usar su código.
Michael
10
Si desea hacer una pregunta / informar algo sobre su proyecto, simplemente abra un "problema" en github y discuta
Alex
8
Sin embargo, ese es un triste estado de cosas. Para mí, Twitter es cualquier cosa menos una buena plataforma.
Xupicor
99
Twitter es malo para la comunicación real porque el límite de 140 caracteres.
My1
66
Esto realmente no ayuda si no hay Twitter en su página de perfil.
Igor