IDE Download 받고 Git 다운 받기
git 설치할때

이 옵션 두개 하기
- Vscode를 default editor로 지정
- 초기 default branch 이름 설정
1. Let Git decide
Git에서는 초기 branch 이름을 "master"로 설정하는데, 이 규칙을 그대로 따라가겠다는 의미입니다.
2. Override the default branch name for new repositories
초기 branch 이름을 "master"가 아니라, 사용자가 원하는 초기 branch 이름으로 변경하는 기능입니다.
폴더 만들어서, git config 에 누구 유저인지 설정 해주기 (주의할점, git이랑 github는 다름, github 는 cloud, 즉 인터넷 베이스-> 실제로 가서 account 만들어야함)

git init

이제 git이 이 폴더를 감시 하기 시작 -> Check point 만들기 시작함 (코드 짜고, 파일 만들고 ... etc)

app.txt 만든 파일 point를 지정하기
git add app.txt > app.txt 파일 저장
git commit -m 'memo' > git coimmit 으로, 현재 상태 저장 하기 (이 상태로 돌리기 및 등등 가능 **git의 핵심기능)

코드수정후 "저장" 먼저 -> git add file(Staging Area) -> git commit -m 'memo' (Repository) (버전 생성 순서, 꼭 기억하기!!)

왜 이렇게 2개 작업을 나눠놨는가?? add를 통해 내가 등록 하고 싶은 파일들만 저장 할 수 있게 하기 위해
예) 이미지 파일들은 거의 안바뀌기 때문에, 버전을 관리 할 필요가 없음
이쉑 ㅋㅋ Staging 함 (commit 할 파일 골라놓은 상태)
git add & commit 동시에 할 수 있는 command 도 있음
여러 파일 Staging 하려면 git add file1 file2 이렇게 또는 git add . (하면 작업 폴더에 있는 모든 파일들 staging가능)

힘들고 복잡할때 상태창!!을 외치듯이 git도 git status 통해 현재 상태 확인하는 command 있음 (내가 어떤 파일들을 staging 해놨는지 확인 가능, 어떤 파일들 수정 됐는지 확인 가능)

내가 commit한 내용을 보고싶다?
git log --all --oneline

간단한 기능 하나 완성했을때 commit 한다고 생각하면됨

요즘 에디터에서는 이렇게 git 기능이 include 되어있는게 많음

자동으로 Staging 까지 가는 것 인듯, 그리고 commit 가능
commit 하기전에 change 찾아보는 습관이 있으면 좋은 습관임
git diff 쓰면 차이점 비교 가능
근데 생짜로 git diff는 안쓰고 보통 git difftool 을 씀


commit 간 차이점도 이렇게 비교 가능

이렇게 사실 커맨드로 보면 불편하니까 git graph 라고 extension tool 쓰면 편함
Git Branch
원본 파일에 계속 코드를 짜서 나가다보면 불안하니, Branch 만들어가지고, 작업하는 방식을 많이 쓴다
프로젝트의 복사본, 즉 commit의 복사본


이렇게 coupon branch 만들어서 여따가 commit, 즉 작업 계속 저장하고 생성하고있는거
coupon branch에 coupon file 만들었어서, main branch 로 가게되면 만들었던 coupon file이 안보임
이렇게 독립적으로 개발이 가능 하기때문에 훨씬 안정적임

이렇게 coupon branch 및 main branch log 확인 graph 로 가능
Head == 현재 우리 위치, 우리 대가리
coupon branch 에서 기능 잘 작동하는거 확인하고 main에 다가 합치고 싶을때?

git switch로 기준이 되는 branch 로 이동해야함
git switch main
git merge coupon 엔터 입력시, 각각 다른 두가지 결과가 생김


왜 conflict 가 발생하는가? main에있는걸 기준으로 할지, coupon branch 에 있는걸 기준으로 할지 모르기 때문

이렇게 conflict 발생
해결법은?
- 원하는 코드만 남기고
- git add
- git commit

이렇게 남기고 싶은 코드 빼고 지우고, add 및 commit 하면 끝

이렇게 잘 merge 된거 git log --oneline --all --graph 또는 extension 으로 확인 가능
협업 할때, branch 들 만들어서 개발 한다음, 괜찮으면 merge하고 등등.. 그렇게함
'Infra As Code' 카테고리의 다른 글
Python venv (0) | 2025.04.02 |
---|