Into: 나는 자료를 읽으면서 배우는 것을 좋아합니다. 그러나 다양한 프로젝트 사이트에 흩어져 있는 인터넷을 통해 이를 검색하는 것은 피곤한 일입니다. 나는 그것을보고 싶다중앙에서 검색 가능리포지토리는 많은 애플리케이션의 소스를 한 곳에 집중시킵니다.
- 누군가가 일부 Linux 도구에 대한 문서를 찾고 싶을 때 가장 좋은 장소는 다음과 같습니다
man toolname
. - "요청 시" Linux 소스 코드를 찾아보고 싶을 때 언제든지 다음으로 이동할 수 있습니다.리눅스 상호 참조.
- 가장 일반적인 직원을 찾으려면 다음에서 모든 소스를 찾을 수 있습니다. 핵심 도구.
- 무언가를 만드는 방법을 확인하고 싶을 때 (예를 들어) 다음으로 뛰어들 수 있습니다.http://www.archlinux.org/packages/, 해당 pkgbuild를 확인하세요.
대부분의 도구에 대한 소스를 한 곳에 모아 놓은 저장소가 있나요? - man
문서를 저장하거나리눅스 상호 참조커널 소스 코드.
구현 방법을 확인하기 위해 "빠르게" 및 "요구 시"를 의미합니다. (예, Google을 알고 있습니다. -> 하지만 일상에 지쳤습니다. 1. 프로젝트 사이트 검색 2. 저장소 탐색 또는 더 나쁜 경우 -> 해당 저장소 보기 3. 완료되면 삭제)
논평:
스트레스를 받고 있는데 Fast, Fast, On Demand라는 도구를 확인하고 싶습니다.
즉, 소스 코드를 보기 위해 전체 애플리케이션과 해당 소스 코드를 설치하고 싶지 않습니다. (그런데 네트워크 소스가 더 나은 옵션이므로 여러 컴퓨터에서 소스를 확인할 수 있습니다. 모든 컴퓨터에 대한 관리자 권한은 없습니다.)
답변1
귀하의 질문에 다른 답변으로 답변해 드리겠습니다. 나는 여러분이 이러한 도구의 GNU 버전뿐만 아니라 전통적인 Unix 명령줄 도구에 대한 코드를 읽고 싶다고 가정합니다. 다양한 프로젝트의 유사한 도구 코드를 읽는 것은 다양한 아이디어와 구현을 배우는 좋은 습관입니다.
GNU에는 coreutils 저장소를 위한 멋진 웹 인터페이스가 있습니다.http://git.savannah.gnu.org/cgit/coreutils.git
BSD 제품군에는 유사한 저장소 웹 인터페이스가 있습니다.
- 오픈 BSD:http://www.openbsd.org/cgi-bin/cvsweb/src/
- 잠자리BSD:http://gitweb.dragonflybsd.org/dragonfly.git/tree
- 웹BSD:http://cvsweb.netbsd.org/bsdweb.cgi/src/
- FreeBSD:http://svnweb.freebsd.org/base/head/
BSD 코드베이스는 일반적으로 동일한 도구에 더 적은 코드가 사용되기 때문에 흥미롭습니다. 즉, 레거시 옵션만 지원되고 추가 옵션은 없습니다. sh는 다른 대형 쉘(bash) 대기에 대한 링크가 아니라 실제 쉘입니다. coreutils와 유사한 도구는 bin, sbin, usr.bin 및 usr.sbin에 있습니다.
타사 소프트웨어를 빌드하는 코드를 읽으려는 경우 동일한 웹 인터페이스를 탐색할 수도 있습니다(arch의 pkgbuild와 유사). NetBSD와 DragonFly는 NetBSD 저장소의 pkgsrc를 사용합니다. OpenBSD와 FreeBSD는 각각의 저장소에 이러한 프레임워크를 가지고 있습니다.
귀하의 목적에 맞는 다른 저장소는 다음과 같습니다.
답변2
오픈 소스 개발을 위한 중앙 위치가 없기 때문에 대부분의 오픈 소스 소프트웨어를 포함하는 중앙 저장소가 없습니다. 일부는 GitHub, BitBucket, 개인 서버, Sourceforge, Launchpad 등을 사용합니다. 따라서 이것은 진정한 분산 환경이며 하나의 저장소를 사용하여 소스 코드를 복사하는 것만으로는 즉각적인 이점이 없습니다.
반면, 바이너리 배포판(소스 코드가 아닌 바이너리를 릴리스하는)은 일반적으로 대부분의 패키지에 대한 소스 코드를 제공하고 모든 사용자가 사용할 수 있도록 합니다. 따라서 가장 좋은 기회는 배포판에서 제공하는 인프라를 사용하는 것입니다. 최신 변경 사항과 수정 사항이 반드시 포함되어 있는 것은 아니며 최신 버전이 아닐 수도 있습니다.
배포판에서 소스 패키지를 다운로드하는 방법의 예:
yumdownloader --source packagename
apt-get source packagename
Arch의 경우 아래 답변을 확인하세요.비슷한 질문에 대한 답변스택 오버플로에.
소스 코드만 다운로드하려면 packages.debian.org를 사용할 수 있습니다.coreutils에 대한 링크. 이렇게 하면 orig.*
원본 패키지(또는 일부 패키지의 깨끗한 소스)에 대한 다운로드 링크가 제공됩니다 dsfg.*
. Arch Linux 패키지 목록에서도 동일한 작업을 수행할 수 있습니다. 예를 들면 다음과 같습니다.아치 코어 유틸리티 페이지. Download from Mirror
패키지가 다운로드 됩니다 .