searchcode 서버는 세련된 웹 사용자 인터페이스를 갖춘 강력한 코드 검색 엔진입니다.
searchcode 서버는 소스 제어 시스템과 함께 작동하여 수천 개의 리포지토리와 파일을 색인화하여 귀하와 개발자가 팀 전체에서 코드를 신속하게 찾고 재사용할 수 있도록 해줍니다.
자세한 내용은 https://searchcodeserver.com/을 참조하고 GIT 및 SVN을 사용하여 여러 프로젝트를 인덱싱하는 라이브 데모는 http://demo.searchcodeserver.com/을 참조하세요.
소스에서 빌드하는 경우 지원을 받을 수 없으며 공정한 소스 라이센스에 지정된 제한 사항 내에서 작업해야 합니다(자세한 내용은 LICENSE.txt 참조). 지원을 구매하려면 https://searchcodeserver.com/pricing.html을 참조하세요.
검색 코드 서버에 통합할 코드를 제출하려면 Apache Public License v2 및 GPL v3에 따라 이중 라이센스가 부여되었음을 지정하십시오. 이를 통해 향후 라이센스 문제에 대해 걱정할 필요 없이 직접 가져올 수 있습니다.
제출하기 전에 반드시 실행하십시오(fabric<2.0 EG pip install 'fabric<2.0' 필요).
fab test
제출이 승인되기 전에 모든 테스트를 통과해야 합니다.
검색 코드 서버를 구축하려면 Java 11이 설치되어 있고 Maven이 설정된 Windows, Linux 또는 OSX 시스템이 필요합니다. 이상적으로는 Python 및 Python Fabric이 설치된 Unix OS를 사용하는 것이 좋습니다.
Fabric 작업(fab)은 현재 Windows에서 지원되지 않습니다. 이를 사용해 볼 수는 있지만 Windows용 Bash 또는 이와 유사한 기능이 필요할 수 있습니다.
자바스크립트 단위 테스트를 실행하려면 필요한 경우 브라우저에서 실행하세요.
./src/test/javascript/index.html
애플리케이션을 테스트하려면 다음 중 하나를 실행하세요.
mvn test
또는
fab test
이 테스트에서는 일부 통합 및 자바스크립트 단위만 다룹니다. 풀 커버리지 실행을 위해
fab test_full
모든 것이 예상대로 작동하는지 확인하기 위해 애플리케이션을 백그라운드에서 실행합니다.
프로덕션 준비가 완료된 전체 릴리스 IE를 구축하려면 다음을 실행해야 합니다.
fab build_release
컴파일을 테스트하고 릴리스 폴더에 릴리스를 빌드하고 릴리스 배포 준비가 완료된 "searchcode-server.tar.gz" 파일을 생성합니다.
단순히 테스트하고 실행하려면 다음을 실행할 수 있습니다.
fab run
그러나 이는 기본적으로 패키지를 빌드하고 실행하는 것입니다. 빠르게 실행하려면 선택한 IDE를 열고 App.java 실행을 시작하세요.
GIT 및 파일 저장소에 대한 인덱싱 논리가 올바르게 작동하는지 확인하는 데 사용되는 특별한 테스트가 있습니다. 이를 수행하려면 다음 쉘 스크립트 중 하나를 실행해야 합니다.
./assets/integration_test/gitload/gitload.sh
./assets/integration_test/gitupdate/gitupdate.sh
./assets/integration_test/fileupdatetest/fileload.sh
./assets/integration_test/fileload/fileload.sh
그런 다음 git 항목을 애플리케이션의 GIT 저장소로 추가하고 파일 항목을 FILE 저장소로 추가합니다. 속성을 설정하는 것도 유용합니다.
check_repo_chages=60
check_filerepo_changes=60
그러나 필수는 아닙니다. 그런 다음 검색 코드를 실행하십시오. 스크립트는 60초마다 파일을 추가/제거/업데이트하므로 검색 코드는 가능한 한 많은 코드 경로에 도달하기 위해 인덱스에서 파일을 추가/업데이트/제거해야 합니다. 이 작업을 수행하면 항상 400개 이상의 문서가 색인화되어야 하며(4개의 저장소를 모두 색인화하는 경우) 최소 201개(fileload.sh 파일 + fileupdatetest 파일 + gitupdate 파일)가 있어야 합니다. 논리가 올바르게 작동하는지 확인하려면 몇 시간에 걸쳐 작업을 실행해 보세요.
릴리스가 이루어지기 전에 빌드는 위의 모든 검사를 통과해야 하며 인덱서 논리 테스트는 최소 24시간 동안 실행됩니다. 성능이 허용 가능한지 확인하기 위해 테스트는 Atom 기반 넷북에서도 실행되었습니다.
searchcode 서버를 로컬에서 실행하려면 Java 11이 설치된 Windows, Linux 또는 OSX 시스템이 필요합니다. 테스트 및 패키징은 아래 버전을 사용하여 수행되었습니다.
$ java -version
openjdk version "11.0.1" 2018-10-16
OpenJDK Runtime Environment (build 11.0.1+13-Debian-2)
OpenJDK 64-Bit Server VM (build 11.0.1+13-Debian-2, mixed mode, sharing)
searchcode 서버를 실행하려는 디렉토리에 다운로드한 파일의 압축을 해제하세요. 이 디렉터리에는 인덱싱하려는 저장소 크기보다 더 많은 디스크 공간이 있어야 합니다.
Java가 경로에 있다고 가정하고 압축을 풀면(java -version 명령으로 확인) Linux/OSX/BSD에 대해 다음 명령을 사용하여 검색 코드를 실행할 수 있습니다.
./searchcode-server.sh
또는 Windows의 경우
searchcode-server.bat
잠시 후 검색 코드 서버를 실행할 준비가 되어야 합니다. 기본적으로 포트 8080에서 실행됩니다. 연결하려면 브라우저에 다음을 입력하세요.
http://SERVER_IP:8080
서버가 로컬로 실행되는 경우 SERVER_IP를 IP 주소로 바꾸거나 로컬 호스트를 바꾸십시오. 검색창이 있는 페이지가 보이면 모든 것이 정상입니다.
추가 제어를 위해 위 파일을 편집하고 java -Xmx 인수를 포함하여 사용할 RAM 양을 지정하거나 전달하려는 다른 Java 옵션을 지정할 수 있습니다.
검색코드 서버 인스턴스를 관리하려면 오른쪽 상단에 있는 관리 링크를 클릭해야 합니다. git 저장소를 추가하려면 기본 비밀번호 Adm1n234(속성 파일을 통해 변경)를 입력하세요. 도움이 필요하면 설명서 페이지(모든 페이지 하단에 있는 링크)를 확인하세요.
Ubuntu를 업데이트 또는 SystemD 작업으로 사용하여 설정하려면 https://searchcodeserver.com/knowledge-base/upstart-and-systemd-startup-scripts-for-ubuntu.html을 참조하세요.
업그레이드는 전체 재색인을 통해 수행하는 것이 가장 좋다는 점을 항상 염두에 두십시오. searchcode.properties 파일에서 구성한 인덱스 디렉터리의 내용을 삭제하거나 관리 화면에서 "인덱스 재크롤링 및 재구성" 버튼을 클릭하여 이 작업을 수행할 수 있습니다.
현재 검색 코드 인스턴스를 업그레이드하려면 다음 단계를 수행하십시오.
현재 검색코드 서버 인스턴스를 중지하세요.
현재 인스턴스 searchcode.properties 및 searchcode.sqlite 파일의 백업 복사본을 만듭니다.
패키지를 새 디렉터리에 압축 해제합니다.
다음 중 하나를 수행할 수 있습니다.
인스턴스를 다시 시작하세요.
관리 화면에 로그인하고 "Recrawl & Rebuild Indexes" 버튼을 클릭하세요.
사용할 수 있는 새로운 구성이 있을 수 있으므로 searchcode.properties 파일을 새 파일(또는 설명서 페이지)과 비교해 보는 것도 좋습니다. 또한 사용할 수 있는 새로운 설정이 있을 수 있으므로 설정 페이지를 확인하세요.
배경 이미지는 커밋되기 전에 다음 명령을 사용하여 모두 크기가 조정됩니다.
convert 1.jpg -quality 75 -resize 1600x1200 1.jpg
Luke를 사용하여 인덱스를 검사하려면 pom.xml에서 lucence와 일치하는 버전을 사용해야 합니다. 현재 이것은 5.5.0이므로 동일한 버전의 luke https://github.com/DmitryKey를 사용해야 합니다. /루크/릴리스/태그/luke-5.5.0
저작권 (c) 2016 Boyter 온라인 서비스
이 소프트웨어의 사용에는 LICENSE.txt 파일에 포함된 Fair Source License가 적용됩니다.
제가 사망하거나 이 소프트웨어가 폐기되는 경우를 처리하기 위해 버전 릴리스 게시일로부터 정확히 3년 후에 라이센스가 변경되는 공개 최종 조항이 있습니다. 이는 버전 1.0.0이 2010년 7월 1일에 출시된 경우 2013년 7월 2일에 나열된 대체 라이센스를 사용하여 사용할 수 있음을 의미합니다. 이 라이센스, 버전 및 시간은 모두 아래에 지정되어 있습니다.
다음 날짜 이후에는 아직 지정되지 않음 소프트웨어 버전 '1.3.15'은 LICENSE.txt 파일에 포함된 Fair Source License 또는 https://www.gnu에 지정된 조건의 GNU General Public License 버전 3에 따라 이중 라이센스가 부여됩니다. .org/licenses/gpl-3.0.txt
OWASP 데이터베이스는 https://creativecommons.org/licenses/by-sa/3.0/에 따라 라이센스가 부여되며 https://codecrawler.codeplex.com/ https://www.owasp.org/index.php/의 크리에이티브 커먼즈에 따라 소스가 제공됩니다. 카테고리:OWASP_Code_Crawler 및 https://www.owasp.org/index.php/OWASP_Code_Review_Guide_Table_of_Contents 이 데이터베이스는 다음과 같이 수정되었습니다. JSON 및 해당하는 경우 철자와 구두점을 약간 수정합니다.
파일 분류자 데이터베이스는 https://creativecommons.org/licenses/by-sa/3.0/에 따라 라이센스가 부여됩니다.