소스코드 형상관리 도구는 소스코드를 관리하는 툴이다.
하나의 서버에서 소스를 쉽고 유용하게 관리할 수 있게 도와주는 툴이며
다양한 버전, branch(나뭇가지)들로 이어져 이전 버전 확인, 새 버전 업데이트, 나아가 서비스 제공 자동화까지 가능하다.
대표적인 도구로 SVN과 GIT이 있다.
1) 초기 : SVN (서브버전)
SVN은 SubVersion의 줄임말이며 형상관리 툴이다.
형상관리 툴을 사용하는 목적은 여러명이 작업하는 프로젝트의 경우에 버전관리, 혹은 각자 담당하여 작성한 소스 코드의 통합하는 과제를 해결하기 위해 저장소를 만들어 관리하는 Software이다.
2) 최근 : Git (분산 관리)
최근 사용하는 깃은 Repository를 중앙관리하는 방식이다.
그러므로 A, B 모두가 중앙의 repo에서 파일을 가져와 동시에 수정할 수 있다.
그렇다면 각자 소스코드가 달라질 수 있다.
여기서 merge라는 것을 통해서 다시 합쳐준다.
최근 동향은 GIT이다.
=> 소셜 코딩(같은 회사가 아니어도 같이 코딩하는 것), 오픈소스 프로그래밍.
=> 입사지원에서도 ‘github.com Respository를 첨부’ 하는 경우가 많음.
ㅇ github.com 계정 만들고 연동해서 개발 환경
- 과제 : github.com 계정
ㅇ Access Token
- 특별한 권한을 설정해 놓은 패스워드
- (일반적으로) Access Token을 이용해서 로그인하는 것을 권장.
------
배포 : 내가 개발한 소스코드를 실제 서버에 옮기고 구성하는 작업
리눅스에서 private repository를 pull/clone (Access Token 필수)
-----
- Access Token
깃 환경설정
ㅇ 새로운 레포지토리를 만들자.
- 특별한 권한을 설정해 놓은 패스워드
ㅇ 윈도우에서 git client를 설치하자.
1) git client 설치 : https://git-scm.com/
=> 설치하시면되는데, 모두 기본 옵션으로 설치하시되 ‘Path(패스)를 등록하는 옵션은 체크’
: git --version 명령으로 설치 확인.
2) git configuration을 한다.
- 참고 사이트 : https://devhealer.tistory.com/22
git config --global user.name “사용자이름” git config --global user.email “이메일주소” git config --list |
ㅇ 소스코드를 가져오자
git clone (레포지토리 URL)
ㅇ 참고 : git의 대표적인 명령어 (CLI)
* git clone ‘url(레포지토리)’ : 특정 레포지토리를 내 Local PC에 연결하고, 최종 소스코드를 다운로드.
=> 예: git clone ~~~~~
* git commit : 내가 수정등 한 작업을 내 로컬 Repository에 저장(반영)
* git push : 로컬 -> 서버
* git pull : 서버 -> 로컬.
※ 주의: 계정명과 비밀번호를 입력 (Access Token)
※ 참고 URL : https://subicura.com/git/guide/
특히, 처음 공부하시는 분 (위에 링크, 이후에 잘 학습)
분류 | 기능 | 명령어 |
시작 및 설정 | 설치된 git 버전 확인 | $ git --version |
.git 하위 디렉토리 생성 | $ git init | |
사용자 이름 설정 | $ git config --global user.name "사용자이름" | |
사용자 이메일 설정 | $ git config --global user.email "사용자이메일" | |
상태 확인 | $ git status | |
저장소 | 원격 저장소 연결 | $ git remote add origin [github 저장소 주소] |
저장소 확인 | $ git remote -v | |
로컬 저장소 복제 | $ git clone /로컬/저장소/경로 | |
원격 저장소 복제 | $ git clone 이름@호스트:/원격/저장소/경로 | |
commit 명령어 | 커밋에 변경사항 올림 | $ git add 파일명 |
수정한 전체파일 올림 | $ git add . | |
커밋 생성(변경사항 저장) | $ git commit -m "메세지" | |
커밋 내역 확인 | $ git log | |
파일 상태 확인 | $ git status | |
branch 명령어 | 브랜치 목록 확인 | $ git branch |
브랜치 생성 | $ git branch 브랜치명 | |
브랜치로 이동 | $ git checkout 브랜치명 | |
브랜치만들고 이동 | $ git checkout -b 브랜치명 | |
master 브랜치로 돌아옴 | $ git checkout master | |
브랜치 삭제 | $ git branch -d 브랜치명 | |
한 커밋씩 출력 | $ git log --oneline | |
커밋을 그래프로 표시 | $ git log --branches --graph | |
push 명령어 | 원격 저장소에 업로드 | $ git push origin master |
커밋을 원격 저장소에 업로드 | $ git push 저장소주소 브랜치이름 | |
커밋을 원격 저장소에 업로드 | $ git push -u 저장소주소 브랜치이름 | |
클라우드 주소 등록 | $ git remote add origin 저장소주소 | |
클라우드 주소 삭제 | $ git remote remove 저장소주소 | |
merge 명령어 | 원격 저장소 변경사항 가져오고 병합하기 | $ git pull |
현재 브랜치에 다른 브랜치 병합 | $ git merge 다른브랜치이름 | |
파일 병합 | $ git add 파일이름 | |
병합 이전의 내용과 비교 | $ git diff 브랜치이름 다른브랜치이름 | |
로컬 명령어 | 변경 전으로 되돌림 | $ git checkout --파일명 |
현재 상태를 다운로드 | $ git fetch origin |
'IT 팁 (IT Tips)' 카테고리의 다른 글
CORS란 무엇인가? (초간단 해결방법 href.location) (0) | 2023.05.18 |
---|---|
IT 직무특강 요약 내용 (2023.05.16) (1) | 2023.05.16 |
[Git] How to use git tag & show version control(깃허브 태그, 쇼, 버전관리 방법) (0) | 2023.04.10 |
각종 IT 꿀팁 ( 2023.03.14 최종 수정 ) (1) | 2022.12.29 |
[티스토리] 임시저장 글 날아가는 현상 해결 방법 (2) | 2022.09.05 |