GitHub에서 단일 파일 다운로드 방법에 대한 팁이나 요령이 있습니까? 원시 파일을 표시하기위한

나는 대부분의 개발자, VCS 를 사용한다고 생각하며 일부는 Git을 사용하기를 바랍니다. 저장소에서 단일 파일의 다운로드 URL을 얻는 방법에 대한 팁이나 요령이 있습니까?

원시 파일을 표시하기위한 URL을 원하지 않습니다. 이진의 경우 아무것도 아닙니다.

http://support.github.com/discussions/feature-requests/41-download-single-file

GitHub를 “다운로드 서버”로 사용할 수 있습니까?

Google 코드로 전환하기로 결정한 경우 언급 된 기능이 여기에 표시됩니까?

아니면 오픈 소스 프로젝트를위한 무료 호스팅 및 VCS가 있습니까?



답변

Git은 저장소의 일부 다운로드를 지원하지 않습니다. 모두 다운로드해야합니다. 그러나 GitHub 로이 작업을 수행 할 수 있어야합니다.

파일을 볼 때 “원시”버전에 대한 링크가 있습니다. URL은 과 같이 구성되어

https://raw.githubusercontent.com/user/repository/branch/filename

URL에 공백을 채우면 Wget 또는 cURL ( -L옵션 과 함께 아래 참조)을 사용하거나 단일 파일을 다운로드 할 수 있습니다. 다시 말하지만, Git이 사용하는 멋진 버전 제어 기능은 없습니다.

업데이트 : 바이너리 파일에서는 작동하지 않는다고 언급했습니다. Git 리포지토리에서 이진 파일을 사용해서는 안되지만 GitHub에는 파일을 업로드하는 데 사용할 수있는 각 리포지토리에 대한 다운로드 섹션이 있습니다. 바이너리가 둘 이상 필요한 경우 .zip 파일을 사용할 수 있습니다. 업로드 된 파일을 다운로드하기위한 URL은 다음과 같습니다.

https://github.com/downloads/user/repository/filename

의 링크에서 위에 제공된 URL은로 github.com리디렉션됩니다 raw.githubusercontent.com. RFC 2616에 따라 ” 이따로 리디렉션이 변경 될 수 있으므로 클라이언트는 향후 요청에 계속 Request-URI를 사용해야합니다.” 이므로이 HTTP 302 리디렉션에서 제공 한 URL을 직접 사용해서는 안됩니다 .


답변

  1. 다운로드하려는 파일로 이동하십시오.
  2. 클릭하면 GitHub UI 내에서 내용을 볼 수 있습니다.
  3. 오른쪽 상단 에서 버튼을 마우스 오른쪽Raw 버튼으로 클릭 하십시오 .
  4. 다른 이름으로 저장…

답변

V3 API를 사용하여 다음과 같은 원시 파일을 얻을 수 있습니다 (OAuth 토큰이 필요함).

curl -H 'Authorization: token INSERTACCESSTOKENHERE' -H 'Accept: application/vnd.github.v3.raw' -O -L https://api.github.com/repos/owner/repo/contents/path

이 모든 것은 한 줄로 가야합니다. 이 -O옵션은 파일을 현재 디렉토리에 저장합니다. -o filename다른 파일 이름을 지정하는 데 사용할 수 있습니다 .

OAuth 토큰을 얻으려면 다음 지침을 따르십시오.
https://help.github.com/articles/creating-an-access-token-for-command-line-use

나는 이것을 요점으로 작성했습니다 :
https://gist.github.com/madrobby/9476733


답변

이 요점 에 따르면 wget 또는 cURL을 사용할 수 있습니다.

  1. GitHub 저장소에서 파일 이름을 클릭하십시오.
  2. Raw를 클릭하여 파일 내용을 표시하십시오.
  3. 브라우저에서 URL을 복사하십시오.
  4. 명령 행에서 다음 중 하나를 실행하십시오.

    • wget --no-check-certificate --content-disposition https://URL-from-step3/
    • curl -LJO https://URL-from-step3/

    하나 더 : RHEL7.6에서 다음을 실행하십시오.

    • wget https://URL-from-step3/ --output-document=FILE_NAME

답변

GitHub Mate 는 단일 파일 다운로드를 쉽게 만들어줍니다. 아이콘을 클릭하여 다운로드하면 현재 Chrome에서만 작동합니다.

GitHub Mate 다운로드


답변

curl이 방법으로 사용할 수 있습니다 :

curl -OL https://raw.githubusercontent.com/<username>/<repo-name>/<branch-name>/path/to/file

Ocurl이 콘텐츠를 다운로드
L한다는 것은 curl이 리디렉션을 따르는 것을 의미합니다.


답변

이것은 이제 모든 파일에 대해 GitHub에서 가능합니다. raw.github.com에 대한 파일을 번역해야합니다. 예를 들어, 파일이 다음 위치의 저장소에있는 경우 :

https://github.com/<username>/<repo>/some_directory/file.rb

wget을 사용하면 다음에서 원시 파일을 가져올 수 있습니다.

https://raw.github.com/<username>/<repo>/<branch>/some_directory/file.rb

Rails Composer 가 그 좋은 예입니다.