- Git 이란?
: 형상관리도구 (버전관리도구)
: 버전관리를 한다는 것은 프로젝트 상태가 변경되는 정보를 알고 있다는 것입니다. Git 은 commit 을 사용해서 버전이 달라지는 것을 관리합니다.
: git은 모든 파일의 변화를 기록하고 있다(누가, 언제, 무엇을 등등) - 누가 어떤걸 실수했는지 무엇을 어떻게 변경했는지 확인할 수 있다.
: 한 파일에 대한 각기 다른 버전을 보관할 수 있다.
: Git history 공유(github)를 통한 팀 프로젝트가 용이하다
: 서로의 변경사항과 충돌하는 일없이 일할 수 있다.
* github : 클라우드에 있는 Git 제공자
* github와 같은 사이트 : Bitbucket, GitLab
- gitbash를 이용한 깃 설정 (해당 폴더에서)
git init
- gitbash에서 commit history 보기
git log
1. git 을 협업할 때 어느부분에 사용할 수 있을까? 무얼 중요하게 생각해야할까
: 클라우드 (깃허브)를 이용하여 팀원의 코드를 병합할 수 있다
: 서로의 코드가 충돌나지 않도록 세팅하는게 제일 중요하지 않을까?
2. commit 이란?
: 로컬에서 작업중인 파일의 변경사항을 git을 이용하여 저장
: savepoint !
: 내용을 파악할 수 있는 commit message 작성
: 작업내역이 어떤 것인지 알아볼 수 있게 적는 메시지를 'commit message'
( 협업을 위한 git 커밋컨벤션 설정하기 : https://overcome-the-limits.tistory.com/entry/%ED%98%91%EC%97%85-%ED%98%91%EC%97%85%EC%9D%84-%EC%9C%84%ED%95%9C-%EA%B8%B0%EB%B3%B8%EC%A0%81%EC%9D%B8-git-%EC%BB%A4%EB%B0%8B%EC%BB%A8%EB%B2%A4%EC%85%98-%EC%84%A4%EC%A0%95%ED%95%98%EA%B8%B0)
3. pull 이란?
: 원격저장소에 있는 git 히스토리를 로컬저장소로 가져오는 작업
: 팀원이 pull할 수 있다. (모든 히스토리를 가져옴) 따라서 모든 변화 기록을 볼 수 있다.
4. push 란?
: 로컬저장소의 git 히스토리를 원격저장소로 보내는 작업
5. Sourcetree 사용법
로컬 폴더 생성 (로컬저장소) -> Github repository 생성 (원격저장소) -> Sourcetree에서 로컬과 원격 연동
-> pull (깃허브 생성시 세팅한 값 불러옴) -> commit (파일 수정 사항 git에 저장 history로 남음)
-> push (원격저장소 github에 git history 보냄)
** 09.원격 repo 사용하기부터 참조 https://teamsparta.notion.site/Git-1-3cb2c0d54a9743898d2420d8e075a286
6. 팀플 세팅
1. 기본 설정값 세팅 동일하게 잡아주기
2. 코드 작성 전 pull 먼저 하기 (코드 충돌 방지)
-> branch를 나눠서 사용하지 않는 경우 gitghub에서 pull request 설정을 통하여 코드 충돌 방지
-> 공부 필요
3. branch를 사용하여 팀원당 한개의 브랜치를 배정하여 코드 작성 후 통합하기
-> 공부 필요
** 용어
repo(리포, repository 리포지토리의 약자) : 깃에서 관리되는 프로젝트
로컬 repo(local repository) : 내 컴퓨터에 저장되어있는 리포지토리
원격 repo(remote repository) : Github 처럼 다른 곳에서 접속할 수 있는 공간에 저장되어있는 리파지토리
추적(Tracking, 트랙킹 / branch tracking) : 로컬 repo 가 원격 repo 를 연결하는 것
(로컬 repo 만이 내가 어떤 원격 repo 와 연결되어있는지를 알고 있다. 원격 repo 는 내가 어떤 로컬 repo 와 연결되어있는지 정보를 가지고 있지 않음)
clone(클론, 복제) : 원격 repo 를 내 컴퓨터에서도 사용할 수 있도록 가져옴
repo(리포, repository 리포지토리의 약자) : 깃에서 관리되는 프로젝트
로컬 repo(local repository) : 내 컴퓨터에 저장되어있는 리포지토리
원격 repo(remote repository) : Github 처럼 다른 곳에서 접속할 수 있는 공간에 저장되어있는 리파지토리
추적(Tracking, 트랙킹 / branch tracking) : 로컬 repo 가 원격 repo 를 연결하는 것
(로컬 repo 만이 내가 어떤 원격 repo 와 연결되어있는지를 알고 있다. 원격 repo 는 내가 어떤 로컬 repo 와 연결되어있는지 정보를 가지고 있지 않음)
clone(클론, 복제) : 원격 repo 를 내 컴퓨터에서도 사용할 수 있도록 가져옴
'프로그래밍 > Git' 카테고리의 다른 글
Github Action을 이용한 배포 자동화2 (with EB) (0) | 2022.04.26 |
---|---|
Github Action을 이용한 배포 자동화 (0) | 2022.04.26 |
gitignore란? (0) | 2022.04.23 |