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 옵션을 추가해주면 된다.