Git1, Git2-CLI 버전관리
참고강의 : 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 로 변경