Saltar al contenido

¿Puedo buscar etiquetas de github con el operador lógico O?

Anduvimos recabando en distintos espacios y así tener para ti la solución a tu problema, si tienes dificultades déjanos tu duda y contestaremos con mucho gusto.

Solución:

Github no admite la búsqueda de etiquetas de esa manera. La búsqueda de problemas se considera un “Y” en lugar de un “O”.

Aquí hay un repositorio que se usa para probar esto.

Ejemplo que demuestra que github admite “Y” en la búsqueda

Mis expectativas

Deben aparecer todos los problemas que son mejoras, características o ambos.

  1. mejora y característica

  2. mejora

  3. característica

Resultado actual

Solo se mostraron los que eran ambos.

  1. mejora y característica

Por lo tanto, no admite el operador OR.

ACTUALIZAR

Otro truco tedioso en torno a esto podría ser eliminar las etiquetas no deseadas usando un símbolo – (menos) antes de la etiqueta. Mira el siguiente ejemplo

label:enhancement -label:bug -label:foo -label:bar

Esto mostrará una lista de todos los elementos que no tienen foo, bar y bug como etiqueta. Esto funcionará, pero puede resultar tedioso si hay demasiadas etiquetas.

Problemas de filtrado que contienen solo las mejoras

Idealmente, la búsqueda de GitHub admitiría paréntesis para anidar y agrupar, y lógica AND, OR, y NOT operadores. Lo que me gustaría es que apoyaran algo como esto:

is:open AND is:pr AND (review-requested:ElectricRCAircraftGuy OR 
assignee:ElectricRCAircraftGuy) AND NOT(review-requested:"team:ORGNAME/team-1") AND 
archived:false AND (author:my-teammate-1 OR author:my-teammate-2 OR 
author:my-teammate-3)

En cambio, su búsqueda es mucho más limitante y también bastante complicada, ya que tiene un comportamiento MUY DIFERENTE dependiendo de dónde escribe su búsqueda. Dado que el estilo de búsqueda anterior no es compatible, consideremos este intento de búsqueda más limitado en su lugar:

Mi busqueda:

is:open is:pr review-requested:ElectricRCAircraftGuy archived:false 
author:my-teammate-1 author:my-teammate-2 author:my-teammate-3

El comportamiento que QUIERO es este:

is:open AND is:pr AND review-requested:ElectricRCAircraftGuy AND archived:false AND 
(author:my-teammate-1 OR author:my-teammate-2 OR author:my-teammate-3)

Pero dependiendo de dónde haces esta búsqueda, obtendrás dos comportamientos muy diferentes. Si voy a https://github.com/ -> Solicitudes de extracción (en la parte superior) y escriba la búsqueda en esta barra de búsqueda resaltada en amarillo aquí:

ingrese la descripción de la imagen aquí

… entonces obtengo este comportamiento de búsqueda:

is:open AND is:pr AND review-requested:ElectricRCAircraftGuy AND archived:false AND author:my-teammate-3

Note que todos author los campos excepto por los últimos fueron BORRADOS. ¡Solo puede buscar UN CAMPO DADO A LA VEZ! ¡Esto es tan limitante! Es como si hubiera hecho esta búsqueda:

is:open is:pr review-requested:ElectricRCAircraftGuy archived:false 
author:my-teammate-3

Sin embargo, si utilizo la barra de búsqueda global, resaltada a continuación, que está disponible prácticamente en cualquier lugar en https://github.com/, y copie y pegue Mi busqueda en esta barra de búsqueda:

ingrese la descripción de la imagen aquí

… luego obtengo este comportamiento de búsqueda, que es exactamente lo que quiero en este caso:

is:open AND is:pr AND review-requested:ElectricRCAircraftGuy AND archived:false AND 
(author:my-teammate-1 OR author:my-teammate-2 OR author:my-teammate-3)

Esto significa que en la barra de búsqueda global, cada término de búsqueda se une con AND bajo el capó, a menos que haya múltiplos de un campo dado, y luego cada uno de ellos se une con OR debajo del capó, como se muestra arriba. Sin embargo, en la barra de búsqueda de Pull Request local, cada término de búsqueda se une con AND bajo el capó, y si hay múltiplos de un campo dado, todos los múltiplos se eliminan excepto por el ultimo, que se conserva. Esto es lo que llamo comportamiento de búsqueda “complicado”, ya que los resultados son 1) confusos, 2) diferentes, dependiendo de la barra de búsqueda que uses, y 3) limitantes: incluso si supieras todo sobre la búsqueda de GitHub, sigue siendo imposible obtener el resultados de búsqueda que desee. Es muy difícil entender lo que está sucediendo sin una investigación exhaustiva y un ensayo y error, que es exactamente lo que tenía que hacer. 🙁

Entonces, ¿cuáles son sus opciones si desea ver una lista de todas las “Solicitudes de revisión” de mi-compañero-1 O mi-compañero-2 O mi-compañero-3? Bueno, puede hacer y marcar una única búsqueda global, como esta:

is:open is:pr review-requested:ElectricRCAircraftGuy archived:false 
author:my-teammate-1 author:my-teammate-2 author:my-teammate-3

O puede hacer y marcar 3 búsquedas de Pull Request por separado, como esta:

  1. PR abiertos, no archivados que solicitan mi revisión Y por my-teammate-1
    is:open is:pr review-requested:ElectricRCAircraftGuy archived:false 
    author:my-teammate-1
    
  2. PR abiertos, no archivados que solicitan mi revisión Y por my-teammate-2
    is:open is:pr review-requested:ElectricRCAircraftGuy archived:false 
    author:my-teammate-2
    
  3. PR abiertos, no archivados que solicitan mi revisión Y por my-teammate-3
    is:open is:pr review-requested:ElectricRCAircraftGuy archived:false 
    author:my-teammate-3
    

Los resultados de visualización de las búsquedas de Pull Request se muestran en un formato más agradable, por lo que, aunque hacer y marcar las 3 búsquedas de Pull Request es más complicado que hacer y marcar una única búsqueda global de la misma cosa, podría ser lo que prefiera. hacer.

Y si desea hacer algo más complicado, como obtener este comportamiento:

is:open AND is:pr AND (review-requested:ElectricRCAircraftGuy OR 
assignee:ElectricRCAircraftGuy) AND NOT(review-requested:"team:ORGNAME/team-1") AND 
archived:false AND (author:my-teammate-1 OR author:my-teammate-2 OR 
author:my-teammate-3)

… lo siento, actualmente no es posible. Tendrá que crear varias subbúsquedas aprovechando el comportamiento de la barra de búsqueda que funcione para usted y utilizando el - firmar donde sea necesario para excluir los resultados. Pero, puede solicitar que GitHub implemente este comportamiento de búsqueda más avanzado abriendo un problema aquí (no afiliado con GitHub, solo un lugar para rastrear problemas) y luego enviándoles un mensaje aquí y brindándoles los enlaces a su problema y a este. Respuesta de Stack Overflow.

Hoja de trucos de referencia rápida de búsqueda de GitHub:

Recordatorio: lea aquí para obtener un resumen / actualización rápida de lo que puede esperar al usar la barra de búsqueda global de GitHub en comparación con la barra de búsqueda de solicitud de extracción de GitHub.

BÚSQUEDAS DE SOLICITUD DE TIRAR (PR) DE GITHUB POR DEFECTO:

  1. Todos los RP abiertos creados por mí:
    1. https://github.com -> haga clic en “Solicitudes de extracción” en el muy superior.
    2. Enlace directo: https://github.com/pulls
  2. Todos los RP abiertos que se me asignaron:
    1. https://github.com -> “Solicitudes de extracción” -> “Asignado”.
    2. Enlace directo: https://github.com/pulls/assigned
  3. Todos los RP abiertos que me mencionan en un comentario (a través de @ my-username):
    1. https://github.com -> “Solicitudes de extracción” -> “Mencionado”.
    2. Enlace directo: https://github.com/pulls/mencionado
  4. Todos los RP abiertos para los que se solicita mi revisión:
    1. https://github.com -> “Solicitudes de extracción” -> “Solicitudes de revisión”.
    2. Enlace directo: https://github.com/pulls/review-requested

BÚSQUEDAS DE SOLICITUD DE TIRAR (PR) DE GITHUB PERSONALIZADAS:

  1. TODAS LAS PRS ABIERTAS, POR AUTOR:

    1. Usando la barra de búsqueda de solicitudes de extracción:

      1. https://github.com -> haga clic en “Solicitudes de extracción” en el muy superior.

      2. Enlace directo: https://github.com/pulls

      3. Ahora use la barra de búsqueda en la parte superior central / superior derecha.

      4. Tenga en cuenta que esta barra de búsqueda está limitada a un solo autor a la vez:

         is:open is:pr archived:false author:username-1
         is:open is:pr archived:false author:username-2 
         is:open is:pr archived:false author:username-3 
         is:open is:pr archived:false author:username-4
        
      5. Aquí hay una URL de muestra para la primera de las 4 búsquedas anteriores: https://github.com/pulls?q=is%3Aopen+is%3Apr+archived%3Afalse+author%3Ausername-1

    2. Usando la barra de búsqueda global de GitHub (barra de búsqueda principal en la parte superior izquierda de cualquier página de GitHub):

      • Esta barra de búsqueda permite varios autores a la vez, pero se muestra de manera ligeramente diferente (no se ve tan bien como) la búsqueda de solicitud de extracción anterior:

          is:open is:pr archived:false author:username-1 author:username-2 author:username-3 author:username-4
        
      • Así es como se ve la URL después de realizar esta búsqueda en la barra de búsqueda global de GitHub: https://github.com/search?q=is%3Aopen+is%3Apr+archived%3Afalse+author%3Ausername-1+author% 3Ausername-2 + autor% 3Ausername-3 + autor% 3Ausername-4

  2. COMENTARIOS QUE OTROS ME PIDIERON:

    1. Usando la barra de búsqueda de solicitudes de extracción:

      • Tenga en cuenta que esta barra de búsqueda está limitada a un solo autor a la vez:

          is:open is:pr archived:false review-requested:my-username author:username-1
          is:open is:pr archived:false review-requested:my-username author:username-2
          is:open is:pr archived:false review-requested:my-username author:username-3
          is:open is:pr archived:false review-requested:my-username author:username-4
        
      • Aquí hay una URL de muestra para la primera búsqueda anterior: https://github.com/pulls?q=is%3Aopen+is%3Apr+archived%3Afalse+review-requested%3Amy-username+author%3Ausername-1

    2. Usando la barra de búsqueda global de GitHub (barra de búsqueda principal en la parte superior izquierda de cualquier página de GitHub):

      • Esta barra de búsqueda permite varios autores a la vez, pero se muestra de manera ligeramente diferente (no se ve tan bien como) la búsqueda de solicitud de extracción anterior:

          is:open is:pr archived:false review-requested:my-username author:username-1 author:username-2 author:username-3 author:username-4
        
      • URL producida por la búsqueda global anterior: https://github.com/search?q=is%3Aopen+is%3Apr+archived%3Afalse+review-requested%3Amy-username+author%3Ausername-1+author%3Ausername- 2 + autor% 3Ausername-3 + autor% 3Ausername-4

Ver también:

  1. Mi respuesta aquí sobre cómo buscar RP por “rama”, “desde rama” y por autor, incluso Al hacer esto utilizando motores de búsqueda personalizados de Chrome, puede activar rápidamente en su barra de búsqueda: ¿Cómo puedo filtrar todas las solicitudes de extracción de GitHub para una rama de destino específica?

Referencias:

  1. https://webapps.stackexchange.com/questions/57933/how-to-search-with-logic-operators-on-github/111246#111246
  2. Vea también mi respuesta más corta aquí: https://webapps.stackexchange.com/questions/57933/how-to-search-with-logic-operators-on-github/142071#142071
  3. Empezando a buscar en GitHub
    1. Acerca de la búsqueda en GitHub
    2. Búsqueda de problemas y solicitudes de extracción
    3. Uso de la búsqueda para filtrar problemas y solicitudes de extracción
    4. Comprender la sintaxis de búsqueda
    5. Solución de problemas de consultas de búsqueda: aquí se mencionan AND, OR, y NOT operadores, pero parece que no los tienen implementados, por lo que esta página debe estar desactualizada :(.
  4. https://github.com/isaacs/github/issues/660
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *