IT이야기

사설 git 서버 (SSH)를 사용하여 bower 패키지를 설치하는 방법

cyworld 2021. 4. 14. 20:49
반응형

사설 git 서버 (SSH)를 사용하여 bower 패키지를 설치하는 방법은 무엇입니까?


편집 : 이 녀석은 성공과 똑같은 일을 하고 왜 나를 위해 작동하지 않는지 알 수 없습니다.

방금 git공개 / 개인 키 (Centos 6.5)를 사용하여 권한 / SSH 인증을 설치 하고 설정했습니다. ie를 사용하여 문제없이 당기거나 밀 수 있습니다.

git clone git@code.organization.com:projects/boilerplate-template

사용자 이름은 git,에있는 코드 /home/git/projects,로 생성 된 저장소입니다 git --init --shared boilerplate-template.

boilerplate-template다른 프로젝트에서 Bower를 어떻게 요구할 수 있습니까?

운없이 다음 bower.json 파일을 사용해 보았습니다.

{
    "name": "my/newproject",
    "dependencies": {
        "boilerplate-template": "git://code.organization.com:projects/boilerplate-template"
    }
}

ECMDERR : "git ls-remote --tags --heads git : //code.organization.com : projects / boilerplate-template, 종료 코드 128에서 code.organization.com (포트 프로젝트)을 조회 할 수 없음 ...

슬프게도 :project포트가 아니라 경로 이기 때문에 실패 합니다. 나는 또한 ssh://대신 시도했습니다 git://.

ENOTFOUND : ssh : //code.organization.com : projects / boilerplate-template 패키지를 찾을 수 없습니다.


Ok, 여기에서 해결책을 찾았습니다 . 내부, 사설 라이브러리 용 패키지 관리 도구로 Bower 사용 . 간단히 제거 git://하거나 접미사를 ssh://추가하십시오 .git.

"git@code.organization.com:projects/boilerplate-template.git#~1"

또한 개인 저장소에 Github 및 Bower를 사용하는 .netrc경우 bower install원격 서버 에서 실행해야하는 경우 파일을 만들 수 있습니다 .

예를 들어 DO 드롭 릿이 있고 ssh 키를 사용하는 git repo를 체크 아웃해야하지만 bower install비공개 인 일부 deps 로 실행해야합니다 . .netrc원격 컴퓨터에 파일을 추가하면 배포 / 빌드를 수행하는 것이 좋습니다.

// .netrc where someToken is generated in Github under Personal access token
machine github.com
    login userName
    password someToken

bower login일하는 데 어려움 이있어서이 방법을 사용했습니다. 여기에서<TOKEN> 생성 됩니다 . Github에서 호스팅되는 개인 저장소에서 작동합니다.

"dependencies": {
    "your-package": "https://<TOKEN>:x-oauth-basic@github.com/Account/Repository.git"
}

TeamCity는 GitHub에서 개인 저장소를 다운로드하려고 할 때이 문제가있었습니다. 이것이 SSH를 사용하고 이전 에 실행 하여 GitHub 개인 액세스 토큰제공하여 해결 한 모든 사람에게 도움이되는 경우 :bower loginbower install

bower.json의 종속성 예 :

"repository": "git@github.com:Account/Repository.git"

빌드 스크립트 내에서 실행할 명령 :

bower login -t {GitHub Personal Access Token}
bower install

https://github.com/settings/tokens 로 이동 하여 토큰을 생성하십시오.

bower login -t {your token} 

bower install

개인 저장소에서 복제하는 경우에도이 문제가 발생할 수 있습니다. 받아 들여진 대답은 정확하지만이 문제를 명확히하고 싶습니다.

  1. 머신에 대한 github SSH 액세스 권한이있는 경우 git repo로 이동하여 "clone with SSH"링크를 복사 한 다음 bower.json 파일에 배치합니다.

  2. 컴퓨터에 github에 대한 https (로그인 인증) 설정이있는 경우 "https로 복제"링크를 복사 한 다음 bower.json 파일에 배치합니다. 저장소

예 : SSH 링크 : git@github.com : Account / Repository.git HTTPS 링크 : https://github.com/Account/Repository.git

Bower.json 파일 :

"종속성": { 
 "repository": "여기에 SSH / HTTPS 복제 줄 붙여 넣기"
}

다른 사람들이 언급했듯이 패키지 위치를 다음과 같이 설정합니다.

"git@code.organization.com:projects/yourproject.git"

bower가 git 저장소에서 가져올 수 있습니다.

Windows에서 SSH 문제가 발생하면 다음 단계를 수행 할 수 있습니다.

  1. PuTTY 도구 다운로드
  2. PuttyGen을 사용하여 새 키를 생성하십시오.
  3. 사용자 .ssh 폴더에 개인 키를 다음과 같이 저장하십시오. anything.ppk
  4. ssh-rsaputty gen에서 시작하는 텍스트 를 클립 보드에 복사합니다.
  5. github로 이동 Settings -> SSH keys -> Add SSH key하여 키 제목을 지정하고 PuttyGen의 텍스트를 키 부분에 붙여 넣습니다.
  6. GIT_SSHPutty 도구 PLINK.exe의 경로가되는 값으로 명명 된 환경 변수를 추가합니다.C:\Program Files\Putty\PLINK.exe
  7. Putty 도구 "Pageant.exe"를 실행 한 다음 anything.ppk키를 pageant에 추가합니다 (시작시 C:\pathtopageant\pageant.exe C:\Users\myuser\.ssh\anything.ppk자동으로 키를 pageant에 추가하도록 시작 폴더에 바로 가기를 추가 할 수 있음 ).
  8. putty.exe자신을 열고 github enteprise 호스트 이름 (위 예에서는 code.organization.com)을 입력하거나 호스트 이름 텍스트 상자에 "github.com"을 입력하고 "열기"를 클릭합니다. 호스트를 신뢰하라는 메시지가 표시 될 것입니다. bower가 처음 실행할 때이 작업을 수행 할 수없고 중단되었을 수 있으므로 known_hosts 파일에 추가하려면 yes를 클릭하십시오.
  9. 드디어 달려 bower install!

비공개 github 저장소에서만 작동하지만 다음과 같이 끝났습니다.

  1. 여기에서 Github 액세스 토큰을 생성 하고 환경 변수로 설정합니다.GITHUB_TOKEN

  2. 에서 속기 해석기를 정의하십시오 .bowerrc.

    "shorthand_resolver": "https://${GITHUB_TOKEN}@github.com/{{owner}}/{{package}}.git"
    
  3. 이제 내 종속성을 다음과 같이 추가 bower install me/my-private-package하거나 나열 할 수 있습니다 bower.json.

    "dependencies": {
        "my-private-package": "me/my-private-package"
    }
    

Heroku 빌드에서도 작동합니다.

ReferenceURL : https://stackoverflow.com/questions/24853847/how-to-install-a-bower-package-using-a-private-git-server-ssh

반응형