Programming

github의 특정 줄 번호에 연결하는 방법

procodes 2020. 3. 4. 07:49
반응형

github의 특정 줄 번호에 연결하는 방법


github 저장소의 파일에서 특정 줄 번호에 연결할 수 있다는 것을 알고 있습니다 (이전에 본 적이 있습니다) ...

누군가이 작업을 수행하는 방법을 말해 줄 수 있습니까?


줄 번호에 연결하지 마십시오! 표준 URL사용하십시오 . 그렇지 않으면 해당 파일이 업데이트 될 때 잘못된 행을 가리키는 URL이 생깁니다!

올바른 줄을 영구적으로 연결하는 방법 :

원하는 줄 번호 (예 : 줄 18)를 클릭하면 브라우저의 URL #L18이 끝에 고정됩니다. 문자 그대로 18코드 줄이 아닌 왼쪽을 클릭하십시오 . 다음과 같습니다 :

선택된 18 행

이제 브라우저의 URL은 다음과 같습니다.

https://github.com/git/git/blob/master/README#L18

여러 줄을 선택하려면 Shift 키를 누른 상태에서 줄 20과 같은 두 번째 줄 번호를 클릭하면됩니다.

여기에 이미지 설명을 입력하십시오

이제 브라우저의 URL은 다음과 같습니다.

https://github.com/git/git/blob/master/README#L18-L20

중요한 부분은 다음과 같습니다.

이제 y를 눌러 특정 커밋에 대한 표준 URL을 가져옵니다 . 브라우저의 URL이 다음과 같이 변경됩니다.

https://github.com/git/git/blob/5bdb7a78adf2a2656a1915e6fa656aecb45c1fc3/README#L18-L20

해당 링크에는에있는 파일의 현재 버전이 아니라 특정 커밋에 대한 실제 SHA 해시가 포함되어 있습니다 master. 즉,이 링크는 영원히 작동하며 해당 파일의 향후 버전에 포함 된 18-20 행을 가리 키지 않습니다.

이제 새로운 영구 링크의 빛을 발하십시오. ;-)

2017 년 9 월 29 일 업데이트 : @watashiSHUN이 지적한 것처럼 github은 이제 ...하나 이상의 라인을 선택한 후 왼쪽에 메뉴를 제공하여 영구 링크를 쉽게 얻을 수있게했습니다 . @watashiSHUN의 답변공감 하십시오 .

GitHub 퍼머 링크 메뉴

2016 년 3 월 25 일 업데이트 : 적절한 사례 — 위의 예에서는 URL의 "README"파일을 참조했습니다. 비정규 URL 은이 답변이 작성되었을 때 실제로 작동했습니다. 그러나 이제이 URL README은 (으)로 이동 한 이후 더 이상 작동하지 않습니다 README.md. 그러나 SHA 해시가있는 표준 URL은 여전히 ​​예상대로 작동합니다.


@ broc.seib는 정교한 대답을 가지고 , 난 그냥 대신 누르는 것을 지적 할 y영구 링크를 얻을, github에 지금 당신이 그것을 달성하는 데 도움이 매우 간단한 UI를 가지고

  1. 줄 번호를 클릭하여 줄을 선택하거나 홀드 홀드하여 여러 줄을 선택하십시오 shift(파일 탐색기에서 여러 폴더를 선택하는 방법과 동일)여기에 이미지 설명을 입력하십시오

  2. 선택한 첫 번째 줄의 오른쪽 모서리에서 펼치고 ...클릭하십시오.copy permalink 여기에 이미지 설명을 입력하십시오

  3. 즉, 선택된 줄과 커밋 해시가 있는 링크가 클립 보드에 복사됩니다 .https://github.com/python/cpython/blob/c82b7f332aff606af6c9c163da75f1e86514125e/Doc/Makefile#L1-L4

줄 번호를 클릭 한 다음 주소 표시 줄에서 링크를 복사하여 붙여 넣습니다. 범위를 선택하려면 숫자를 클릭 한 다음 나중에 숫자를 Shift 클릭하십시오.

다른 방법으로, 링크는 #L<number>파일에 대한 링크를 사용하여 특정 행 번호 끝에 추가하는 비교적 간단한 형식 입니다. 다음은 git저장소의 세 번째 줄에 대한 링크입니다 README.

https://github.com/git/git/blob/master/README#L3

강조 표시된 줄과 수정 된 주소 줄이있는 스크린 샷


코드 스 니펫에 대한 영구 링크가 풀 요청 주석 필드에 붙여 넣기

퍼머 링크를 사용하여 이슈, PR 등에 코드 스 니펫을 포함시킬 수 있습니다.

참고 문헌 :

https://help.github.com/en/articles/creating-a-permanent-link-to-a-code-snippet


Many editors (but also see the Commands section below) support linking to a file's line number or range on GitHub or BitBucket (or others). Here's a short list:

Atom

Open on GitHub

Emacs

git-link

Sublime Text

GitLink

Vim

gitlink-vim


Commands

  • git-link - Git subcommand for getting a repo-browser link to a git object
  • ghwd - Open the github URL that matches your shell's current branch and working directory

Related to how to link to the README.md of a GitHub repository to a specific line number of code

You have three cases:

  1. We can link to (custom commit)

    But Link will ALWAYS link to old file version, which will NOT contains new updates in the master branch for example. Example:

    https://github.com/username/projectname/blob/b8d94367354011a0470f1b73c8f135f095e28dd4/file.txt#L10
    
  2. (마스터 브랜치 )와 같이 ( 커스텀 브랜치 )에 연결할 수 있습니다 . 그러나 링크는 항상 새로운 업데이트가 포함 된 최신 파일 버전으로 연결됩니다. 새로운 업데이트로 인해 링크가 잘못된 업무 라인 번호를 가리킬 수 있습니다. 예:

    https://github.com/username/projectname/blob/master/file.txt#L10
    
  3. GitHub는 다음과 같은 비즈니스 문제로 인해 (사용자 지정 커밋) 또는 (마스터 브랜치)로 파일에 자동 링크 할 수 없습니다.

    • 라인 비즈니스 의미, 새 파일에 링크
    • 변경할 수있는 대상 강조 코드의 길이

참고 URL : https://stackoverflow.com/questions/23821235/how-to-link-to-specific-line-number-on-github



반응형