코딩 농장

Git1, Git2-CLI 버전관리

GreenBNN 2022. 6. 26. 14:13

참고강의 : https://www.youtube.com/playlist?list=PLuHgQVnccGMCNJESahrVV-uYGMNYK_vMf 

https://www.youtube.com/playlist?list=PLuHgQVnccGMATJK16UJ9Fjay0ozrSZKiI 

git 커리큘럼

 

git을 사용하는 세가지 목적

버전관리, 백업, 협업

아래에서 우리는 파일을 Create 만들고 Read 읽고  Update 업데이트하고 Delete 삭제해볼 것이다.

 

git 프로그램

git을 편리하게 쓸 수 있도록 한  프로그램 SourceTree, TortoiseGit, Github Desktop

모두 git 프로그램을 기반으로 만든 것들이다. 

git 프로그램은 명령어 기반으로 작동

이 방법이 익숙해 지면 복잡한 GUI 없이 사용이 가능하다.

또 명령어를 한번에 처리해서 자동화를 시킬 수 있다.

또한 GUI 를 사용 못하는 환경에서 명령어로 사용 가능

 

1. git 을 사용하고 싶은 폴더에서 "git init ." 을 치면 .git 파일이 생성

2. 이 .git 파일에서 우리가 작업하고 git 을 사용하는 것들이 저장된다.

 

.git 은 Repository 로 버전이 저장되는 공간이다.

우리가 파일을 만들고 수정하는 버전으로 만들어지기 전이 Working tree

우리가 만든 파일들 중에 버전으로 만들 몇개를 뽑아 Staging Area 로 올려놓는다. 그것을 나중에 git 이 버전으로 만든다.

 

git 의 상태 확인

git status  : 지금 git 상태 어떻니?

No commits yet : 아직 버전이 없어 

Untracked files : 추적되지 않는 파일들이 이것들이야 // 새로운 파일 등장

Changes to be committed : 버전 생성시 commit이 될 파일들이 이것들이야 // 커밋될 파일들

nothing to commit, working tree clean : 버전 만들꺼 없어 최신 상태얌 // 최신 커밋 이후 변화 X

no changes added to commit : 버전 업데이트 해도 그대로야 // 최신 커밋 이후 변화 X 

git add hello1.txt : 이 파일을 Staging Area 에 올려

git commit  -m "Message 1" : Staging Area 에 있는 것들을 버전으로 만들자 이때 메세지는 저걸로

git commit -am "Message 1" : add 하고 commit 한번에 하기 // 이전에 한번 commit 한 것들을

 

git log : 이제까지 git 버전 업데이트한게 뭐니?

git log --stat : 각 버전에서 뭐 추가됨?

git log -p : 각 파일들의 버전마다 변경점

 

git 의 버전 관리 / 시간여행

git diff : 버전의 Working tree 변경사항 보여주기

git reset --hard : 버전을 지우고 Working tree 리셋 !! 

git reset --soft, mixed : 지우고 싶은거.... 지우기 ... 나중에 검색해서 쓰자

git revert  "버전1" : 버전1에서 변화를 취소 // 순차적으로 revert 를 해야 태초가 가기 가능

 

git checkout "log" : 이전 버전으로 돌아갈래~

git checkout master : 가장 최신 버전으로

 

git config --global core.editor "Editor" : 설정한 text editor 로 변경