Wykres źródłowy

Wykres źródłowy
Deweloperzy Sourcegraph, Inc.
Pierwsze wydanie 2013
Wersja stabilna
4.3.0 / 16 grudnia 2022 r
Magazyn https://github.com/sourcegraph/sourcegraph
Napisane w Dalej , TypeScript
System operacyjny Microsoft Windows , Linux , MacOS
Typ Inteligencja oprogramowania
Licencja Sourcegraph OSS: Apache 2.0 , Sourcegraph Enterprise: własność
Strona internetowa o .sourcegraph .com

Sourcegraph to narzędzie do wyszukiwania kodu i analizy kodu, które semantycznie indeksuje i analizuje duże bazy kodów, dzięki czemu można je przeszukiwać w repozytoriach komercyjnych, open-source , lokalnych i opartych na chmurze . Sourcegraph obsługuje wszystkie główne języki programowania.

Historia

Sourcegraph został opracowany przez absolwentów Stanforda , Quinna Slacka i Beyanga Liu, i został wydany po raz pierwszy w 2013 roku. Częściowo zainspirowany doświadczeniem Liu w korzystaniu z Google Code Search, gdy był stażystą w Google, Sourcegraph został opracowany w celu „rozwiązania dużego problemu z kodem”, umożliwiając programistom zarządzanie duże bazy kodów obejmujące wiele repozytoriów, języków programowania, formatów plików i projektów.

Sourcegraph może służyć do wyszukiwania i analizowania całego kodu organizacji. Podczas indeksowania wyszukiwania platforma buduje globalny wykres referencyjny, który odwzorowuje całą bazę kodów i umożliwia takie funkcje, jak „przejdź do definicji”.

Oprogramowanie Sourcegraph było początkowo hostowane przez każdego klienta we własnej infrastrukturze. Pierwsi klienci to Uber , Dropbox i Lyft .

W 2016 roku Sourcegraph został skrytykowany za dostarczenie licencji Fair Source, a programiści wyjaśnili, że „cały kod źródłowy Sourcegraph jest publicznie dostępny i można go zhakować” i miał na celu „pomoc programistom open source w znalezieniu równowagi między otrzymywaniem zapłaty a zachowaniem ich wartości ” . W 2018 roku Sourcegraph był licencjonowany na licencji Apache 2.0 . a Sourcegraph OSS został od tego czasu wydany na licencji Apache License 2.0, podczas gdy wersja komercyjna, Sourcegraph Enterprise, została wydana na własnej licencji.

W 2019 roku Sourcegraph został zintegrowany z bazą kodu GitLab , dając użytkownikom GitLab dostęp do platformy programistycznej opartej na przeglądarce .

W 2021 roku udostępniono portal przeglądarkowy, który umożliwia użytkownikom bezpłatne przeszukiwanie projektów open source i osobistego prywatnego kodu. W 2022 roku uruchomiono Sourcegraph Cloud, komercyjne rozwiązanie chmurowe dla jednego dzierżawcy dla organizacji zatrudniających ponad 100 programistów.

Aplikacje

W badaniach Sourcegraph został zastosowany do opracowania metod eksploracji danych dla dalszych zależności oraz do pomocy w refaktoryzacji i tłumaczeniu programu na jego odpowiednik w innym języku programowania.

Sourcegraph jest używany w społeczności oprogramowania CERN Accelerator Control do indeksowania kodu, szybkiego przeszukiwania go i tworzenia statystyk.

W cyberbezpieczeństwie Sourcegraph został wykorzystany do lepszego wglądu w kod źródłowy podczas testów penetracyjnych.

Od lipca 2021 r. niektórzy klienci Sourcegraph to Adidas , Lyft , Uber , Yelp , Plaid , GE , Atlassian , Amazon , PayPal , Qualtrics i Cloudflare .

Podstawowe cechy

Podstawowy produkt Sourcegraph ma dwie wersje:

  • Sourcegraph Open Source (Sourcegraph OSS), z którego można korzystać bezpłatnie i zawiera tylko uniwersalną funkcję wyszukiwania kodu Sourcegraph.
  • Sourcegraph Enterprise (wcześniej Sourcegraph Data Center), który obejmuje platformę analizy kodu Sourcegraph i ma bezpłatny poziom dla ograniczonej liczby użytkowników.

Kod można przeszukiwać i nawigować z poziomu internetowego interfejsu użytkownika Sourcegraph lub za pomocą rozszerzeń przeglądarki i IDE oraz wtyczek edytora tekstu . Sourcegraph obsługuje ponad 30 języków programowania i integruje się z GitHub i GitLab w zakresie hostingu kodu, Codecov w zakresie pokrycia kodu oraz Jira Software w zakresie zarządzania projektami.

Wyszukiwanie kodu

Narzędzie „uniwersalnego wyszukiwania kodu” Sourcegraph służy do wyszukiwania, eksploracji i zrozumienia kodu. Wyszukiwanie można wdrożyć w wielu repozytoriach i platformach hostingu kodu. Wyszukiwanie może być dosłowne , wyrażenia regularne lub strukturalne. Strukturalna składnia wyszukiwania uwzględnia języki i obsługuje wyrażenia zagnieżdżone oraz instrukcje wielowierszowe lepiej niż wyrażenia regularne. Wyszukiwanie kodu firmy Sourcegraph wykorzystuje odmianę algorytmu Google PageRank do uszeregowania wyników według trafności.

Nawigacja po kodzie

Funkcja nawigacji po kodzie Sourcegraph może być wykorzystana do przeskoczenia do definicji zmiennej lub funkcji lub znalezienia wszystkich odniesień do niej w bazie kodu.

Zmiany partii

Funkcja zmian wsadowych Sourcegraph umożliwia programistom i firmom automatyzację i śledzenie refaktoryzacji kodu na dużą skalę, poprawek bezpieczeństwa i migracji między repozytoriami i hostami kodu.

Wgląd w kod

Funkcja Code Insights Sourcegraph wyodrębnia dane z bazy kodu, aby zapewnić szczegółowe analizy i wizualizacje w celu śledzenia stanu i postępu projektu kodu.

Własność

Oprogramowanie jest rozwijane przez firmę o tej samej nazwie i do tej pory zebrało łącznie prawie 225 milionów dolarów finansowania.

Zobacz też