Sourcegraph: um mecanismo de pesquisa de código fonte de código aberto
Em um anúncio recente, uma ferramenta Code Search and Navigation chamada Sourcegraph foi declarada Open Source. Como a navegação pelo código fonte é muito mais conveniente, a própria ferramenta Open Source é definitivamente uma grande vantagem para os desenvolvedores!
Examinamos seus recursos e também tentamos descobrir como isso pode ser muito útil para desenvolvedores que estão acostumados a navegar por hosts de código como GitHub, GitLab e outros com bastante regularidade.
Recursos de Sourcegraph
Conforme indicado na página do GitHub, o Sourcegraph tem os seguintes recursos:
- Pesquisa global rápida de códigos
- Reconhecimento Inteligente de Código
- Aprimoramento de host de código no GitHub, GitLab e mais
- API de extensão para facilitar a integração de terceiros
Você pode implantar o Sourcegraph no seu servidor e configurá-lo para trabalhar com os repositórios Git da sua organização. Depois disso, você obtém um mecanismo de pesquisa no qual pode pesquisar todos os códigos.
Mas se você é um desenvolvedor solitário, como eu, ainda é possível usar o Sourcegraph em alternativas GitHub ou GitHub como o GitLab.
Eu vou mostrar rapidamente como usar o Sourcegraph para uma melhor navegação de código no GitHub.
Usando o Sourcegraph no GitHub
Vamos descobrir como você pode facilmente experimentar essa ferramenta com uma extensão do Firefox ou do Chrome. Aqui, usamos o Firefox:

É assim que parece com a extensão Sourcegraph instalada e quando você visualiza um arquivo no repositório Vim no GitHub:


Note como podemos ver os novos botões Sourcegraph dentro da interface do GitHub, graças à extensão instalada. Uma coisa a notar é que não é necessário nem mesmo efetuar login no GitHub para navegar pelo Code hospedado e seus repositórios para fazer uso dos recursos úteis do Sourcegraph.
Quando você clica em “View File”, a aparência inteira muda e o arquivo é aberto para você em uma interface completamente nova dentro do próprio navegador:

Sem o Sourcegraph, se você quiser procurar arquivos com um formato específico, digamos, arquivos C ++ .cpp neste exemplo, é muito difícil filtrá-los e visualizá-los se tentarmos usar o próprio mecanismo de pesquisa do GitHub dentro deste repositório:

Mas, quando você estiver usando essa extensão, veja como é fácil visualizar todos esses arquivos de uma só vez dentro do repositório:


O Sourcegraph pode restringir-se através do Code Search de forma muito inteligente, conforme explicado neste vídeo:
A inteligência de código no Sourcegraph é ativada pelo Lang Server, que permite identificar o tipo de linguagem de programação que você está usando:

Saiba mais sobre sua utilidade no seguinte vídeo:
Dica bônus sobre o uso de Sourcegraph
Mesmo sem instalar uma extensão em seu navegador, você pode usar diretamente o Sourcegraph como um IDE em cima de qualquer repositório no GitHub, apenas adicionando “sourcegraph.com/” como um prefixo para o URL do repositório.
Por exemplo, o URL para o repositório oficial do Vim é:
github.com/vim/vim
Para ver o mesmo através do Sourcegraph, modifique o URL como abaixo e você está pronto para ir:
sourcegraph.com/ github.com/vim/vim
Eu também testei este método com o GitLab e ele funciona lá também! Você pode tentar outros repositórios também!
Desenvolvedores de Sourcegraph têm um plano mestre por trás de declarar Open Source:
Tornar a inteligência básica de código onipresente (para todas as linguagens e em todos os editores, host de código, etc.)
Tornar a revisão de código contínua e inteligente
Aumentar a quantidade e a qualidade do código-fonte aberto
Aqui estão as maneiras que eles sugerem que você pode contribuir para o seu desenvolvimento:
- Envie solicitações de pull para o projeto de código aberto Sourcegraph
- Participar activamente no seu desenvolvimento continuado
- Adicione e melhore a documentação
- Crie extensões do Sourcegraph para melhorar a visualização / revisão do código no Sourcegraph e no GitHub
Portanto, este foi um breve resumo de como o Sourcegraph pode tornar a vida do desenvolvedor muito mais fácil e livre de problemas.
Você é um desenvolvedor? Gostaria de adotar essa nova ferramenta de código aberto em suas tarefas de programação do dia-a-dia? Deixe-nos saber na seção de comentários abaixo.