gitlab 생성된 프로젝트 권한 문의

조회수 1770회
  1. 어드민 계정으로 gitlab에 testproject 라는 프로젝트를 private 형태로 생성하였습니다.

  2. 제 클라이언트 pc에서 다음과 같이 git 계정을 설정합니다.

    $ git config --global user.name "kimXX"

    $ git config --global user.email kimXX@email.com

3.다음과 같이 저장소를 가져와서 만듭니다.

 $ git clone http://www.xxx.xxx/root/testproject.git

    **질문1) testproject에 kimXX 계정의 사용자가 멤버에 없는데도 저장소가 만들어 지네요? 
                권한체크가 되야 하지않나요?**

4.파일을 만들어 다음과 같이 반영합니다.
$ touch README.md

 $ git add README.md

 $ git commit -m "add README"

 $ git push -u origin master

      **질문2) testproject에 kimXX 계정의 사용자가 멤버에 없는데도 생성한 파일이 push가 가능하는데
                권한체크가 되야 하지않나요?**

gitlab에 들어가서 확인

          **질문3) commit은 제 클라이언트에 설정된 계정으로 표시되는데, push는 admin계정으로 했다고 표시되는데 push도 클라이언트에 설정된 계정으로 표시되야 하지 않나요?

이미지 이미지

2 답변

  • 좋아요

    2

    싫어요
    채택 취소하기

    시작하기 전에 아래 명령을 설명하겠습니다.

    git config --global user.name "kimXX"
    git config --global user.email kimXX@email.com
    

    이는 커밋의 작성자를 지정하기 위한 설정으로, git 저장소의 접근하기 위한 계정과는 관련이 없습니다.

    질문 주신 내용을 보면 이미 Administrator로 로그인이 되어 있는 상황이 입니다. 로그인을 유지 하지 않고 싶다면 아래와 같은 명령어를 입력할 필요가 있습니다.

    git config --global --unset credential.helper
    

    질문1) testproject에 kimXX 계정의 사용자가 멤버에 없는데도 저장소가 만들어 지네요? 권한체크가 되야 하지않나요?

    저장소가 private 으로 생성되었기 때문에 clone 을 할때도 저장소에 접근하기 위한 로그인이 필요 합니다. 로그인을 하고도 권한이 없는 계정은 clone 할 수 없습니다.

    질문2) testproject에 kimXX 계정의 사용자가 멤버에 없는데도 생성한 파일이 push가 가능하는데 권한체크가 되야 하지않나요?

    권한 확인 합니다. 권한이 없으면 push가 불가능합니다.

    질문3) commit은 제 클라이언트에 설정된 계정으로 표시되는데, push는 admin계정으로 했다고 표시되는데 push도 클라이언트에 설정된 계정으로 표시되야 하지 않나요?

    push 는 저장소의 계정으로 이루어지며, 커밋의 작성자는 user.name 으로 설정됩니다. 올려주신 이미지를 보면 pushAdministrator 로 되어 있지만 커밋의 작성자는 Administrator 가 아닌 것을 볼 수 있습니다.

  • 정말 감사합니다. 큰 도움 되었습니다.

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)