git-secrets를 SourceTree (Macintosh)에서 사용할 수있게하는 단계

배경



목적



이 근처에 있는 것처럼 비밀 정보의 Git 푸시·공개를 막기 위해서, git-secrets ( htps : // 기주 b. 코 m / 아 ws ぁ bs / 갓 t 세 c ts ) 를 도입했을 때의 일입니다.
  • AWS 계정을 취득한 후 속공으로 해야 할 초기 설정 정리
  • AWS 계정 생성 후 초기 설정(보안 설정)
  • 클라우드 파산을 방지하기 위해 git-secrets 사용
  • 초보자가 AWS에서 실수라고 불법 이용되어 $6,000 청구, 울 것 같게 된 이야기.

  • 【2018/2/25 추기】 「 GitHub에 AWS 키 페어를 올리면 빠진다고 정말? ? ? 시도해보세요! 」에 의하면 공개 후 13분 후부터 몇개의 액세스가 있었다고 합니다.

    도전


    git-secrets를 설치 한 후 SourceTree로 푸시하려고하면 비밀 정보가없는 push에서도 오류가 발생합니다.
    git -c diff.mnemonicprefix=false -c core.quotepath=false -c credential.helper=sourcetree commit -q -F /var/folders/xn/1hl03gp55_3df0y1xl37tg900000gp/T/SourceTreeTemp.xNvMuf 
    git: 'secrets' is not a git command. See 'git --help'.
    Completed with errors, see above
    

    아무래도 「 클라우드 파산을 방지하기 위해 git-secrets 사용 」의 「SourceTree등을 사용하고 있다면」 부분의 설정이 되어 있지 않은 모습.

    이번 주제



    타이틀대로입니다만, git-secrets 도입시에, SourceTree로 Git를 계속 사용하기 위한 구체적인 순서를 정리해 둡니다.
    (2018.7.30추가) 댓글에서 가르쳐 주신 brew 에서 Git 설치하고 SIP 설정을 통과할 수 있는 접근법은 여기 입니다.

    환경 조건


  • macOS Sierra 버전 10.12.3
  • SourceTree version 2.3.1
  • Git 버전 2.10.1 (Apple Git-78)

  • 절차 개요


  • Macintosh Git 명령의 파일 디렉터리에 git-secrets 링크
  • SourceTree가 사용하는 Git을 "시스템 Git"을 사용하는 것으로 변경

  • 개요라고 쓰면 이렇게 됩니다만, 의외로 부대하는 작업이 있었으므로, 내보내 갑니다.

    설정



    [순서 1] Macintosh Git 명령의 파일 디렉토리에 git-secrets 링크



    Git 위치 확인


    git 위치 확인 -> /usr/bin/git
    $ which git
    /usr/bin/git
    

    즉, /usr/bin/git-secrets 를 링크하면 좋을 것입니다.

    git-secrets의 위치 확인


    git-secrets 위치 확인 -> /usr/local/Cellar/git-secrets/1.2.1/bin/git-secrets
    $ which git-secrets
    /usr/local/bin/git-secrets
    $ readlink git-secrets
    /usr/local/Cellar/git-secrets/1.2.1/bin/git-secrets
    

    그 후,
    cd /usr/bin
    sudo ln -s /usr/local/Cellar/git-secrets/1.2.1/bin/git-secrets
    

    그렇다면 끝나는 것 같아, /usr/local 또는 /usr/bin에 대한 링크는 sudo 그래서 준비는 아직 계속됩니다.

    System Integrity Protecton(SIP) 비활성화



    El Capitan 이후의 OS에서 System Integrity Protecton(SIP)이라는 기능이 추가되어 보안이 강화된 것으로, 이것을 일단 무효로 해 줄 필요가 있습니다.
  • command + r를 누른 상태에서 Mac을 시작하고 복구 모드로 시작합니다.
  • 헤더 메뉴의 유틸리티에서 터미널을 시작합니다.
  • 터미널에서 SIP 명령 csrutil disable를 친다

  • git-secrets를 /usr/bin/에 연결



    SIP가 비활성화되면 git-secrets를/usr/bin/에 연결합니다.
    cd /usr/bin
    sudo ln -s /usr/local/Cellar/git-secrets/1.2.1/bin/git-secrets
    

    System Integrity Protecton(SIP) 사용



    원하는 링크가 나오면 SIP를 다시 활성화합니다.
  • command + r를 누른 상태에서 Mac을 시작하고 복구 모드로 시작합니다.
  • 헤더 메뉴의 유틸리티에서 터미널을 시작합니다.
  • 터미널에서 SIP 명령 csrutil enable를 친다

  • [2단계] SourceTree가 사용하는 Git을 '시스템 Git'을 사용하도록 변경



    시스템 Git 선택



    SourceTree의 환경 설정을 엽니다. 또한 Git 탭을 선택합니다.


    시스템 Git 사용을 클릭하여 git 선택 화면으로 이동합니다. 

    /usr/bin 에서 git 를 선택하고 열기를 클릭합니다. 여기서 같은 계층에 이전에 링크한 git-secrets 도 확인할 수 있습니다.

    환경 설정 화면으로 돌아가면 시스템의 Git이 선택되었음을 알 수 있습니다.



    이제 Git을 다시 푸시하면 오류없이 푸시 할 수있었습니다.

    요약



    단지 링크하는데도 의외로 할 일이 있었으므로, 간단하게 정리해 보았습니다.

    좋은 웹페이지 즐겨찾기