본문 바로가기

Programing

[git] git ID,PW(Access-token 저장, 계정/비번 입력 최소화

Git(Github or Gitlab) repo를 사용하다보면 가끔씩 발생하는 에러들이나 반복되는 작업에 일부 번거로움이 있습니다.

- 보편적인 Git Push 순서
- Git credential 저장

이 두가지에 대한 이해만 있으면 충돌이나 번거로움이 일부 해소될 것 같아 공유합니다.


[ 보편적인 push 순서 ]

0. 원격최신소스 반영
    -  $ git stash         : 내가 변경한 항목 임시 저장
    -  $ git pull            : 원격 저장소 내용 다운 
    -  $ git stash pop  : 내가 변경한 임시저장 재로딩

1. Git  Staging : 기록에 반영할 항목 정리
   - $ git add .                        : 변경사항 전부 추가
   - $ git add {반영할 파일명} : 변경파일 중 일부 추가

2. 변경사항 버전 Description 작성 
   - $ git commit -m " { 버전 기록에 대한 설명 }"

3. 업로드
   - $ git push [ repo 약어 ] [ Branch 명 ]
       * repo 약어에서 Origin은 github 사이트링크를 의미, 이는 각 회사들이 보안이슈로 On-Premise 설치된 사이트가 있을경우 변경이 필요할것으로 보인다.
      * 만약 git clone으로 git관련 정보를 이미 받았을 경우 뒤 옵션은 생략가능하다.

4. 계정정보 입력 ID/PW or ID/Acess-Token 입력


위의 보편적인 push 과정을 겪다보면 4번 과정에서 매번 아이디(이메일)과 비밀번호(or Access-Token)을 입력하는것이 번거로워진다. 특히 토큰을 사용할 경우 매번 저장해둔 정보를 긁어와야하기 때문에, git에서 제공하는 credential저장 기능을 사용하면 한층 편해진다.

 1. $ git config --unset credential.helper : 기존 저장된 credential 정보 삭제

 2. [ 반영구 ] $ git config credential.helper store    : 이후에 입력되는 credential 정보를 저장하도록 설정

 3. [ 임시 ] $ git config credential.helper cache    ->  default 900초(15분) 간 임시저장
      (or) 시간설정 $ git config credential.helper 'cache --timeout 3600' 

(optional) 이는 해당경로 git 에만 적용되며, 전수 repo에 적용이 필요할 경우 $ git config --global 옵션을 추가해주면 된다.