DevOps/GIT

github #1 github init, log, diff, add, status, commit

aliceintr 2020. 11. 15. 16:13
반응형

1. github MAC 설치

처음 homebrew 를 이용해서 github을 다운로드 한다.

그 후 git 명령어 중 하나를 쳤는데 발생한 에러.

stackoverflow를 뒤져서 해결방법을 찾음

git 설치 완료 !


2. git init

내 로컬 머신에 Repository 하나를 만들고 그 후에 git init 을 설정. .git 파일은 버전 컨트롤에 있어서 중요한 파일이다.

git init [디렉토리 이름] 은 git 저장소를 만드는 것이라 할 수 있다.


3. git status and git add

로컬에 있던 파일들을 새로만든 깃헙 프로젝트 디렉토리에 넣고 난 후에 git 상태

git add 는 스테이지위에 파일 혹은 디렉토리를 올려주는 것

stage : commit 대기 상태의 파일들이 있는 곳

로컬 repository에 다 넣고 git add 를 다하고 status 명령어 입력한 상태

 

**NOTE : 만약 git add 나 commit 을 취소한 후에 같은 파일을 add 할거면 파일명을 바꿔서 add 해야 commit이 가능

 

Changed not staged for commit 에 나열된 list 들은 commit 이 되지 않을 것이다.

따라서 꼭 수정된 파일은  add 해서 commit 리스트에 넣어줘야한다.

SVN과 비교 했을 때  선택적 Commit 을 할 수 있다는 장점이 있다


4. git log and diff

git log result

git log -p :  변경된 파일 내용을 디테일하게 보여줌

 

--- /dev/null 의미 : First Commit에서 S03_DataType.java 라는 파일이 처음으로 add 됬다는 의미.

git log [commit ID]: commit ID 이전의 commit 기록만 출력

git log --reverse : 역순으로 프린트 해줌

git checkout [commitID] : 그 당시의 commit ID가 가진 코드 상태로 돌아갈 수 있음.

git diff [commit ID1]..[commit ID2] : commit ID1과 commit ID2 의 차이점을 보여줌

git diff : 단순한 git diff 명령어는 staged 된 파일과 로컬파일 간의 차이점을 보여준다(만약 같은파일이 working directory 에서는 수정되었는데 staged area에서는 이러한 변경사항이 반영이 안되있을 경우 )

 

"It’s important to note that git diff by itself doesn’t show all changes made since your last commit — only changes that are still unstaged. If you’ve staged all of your changes, git diff will give you no output."

 

※따라서 이 명령어를 쓰면 내가 수정하고도 git add 를 하지않은 파일들을 확인 할 수가 있다.

 

git log 와 git diff 가 중요한 이유 : 마지막으로 코드 업데이트 전에 자신이 변경한 코드의 내용을 확인할 수 있는 기회

 

 

 

 

ref : https://git-scm.com/book/ko/v2/%EC%8B%9C%EC%9E%91%ED%95%98%EA%B8%B0-Git-%EA%B8%B0%EC%B4%88
ref : https://git-scm.com/book/ko/v2/Git%EC%9D%98-%EA%B8%B0%EC%B4%88-%EC%88%98%EC%A0%95%ED%95%98%EA%B3%A0-%EC%A0%80%EC%9E%A5%EC%86%8C%EC%97%90-%EC%A0%80%EC%9E%A5%ED%95%98%EA%B8%B0


내용이 도움이 되셨다면 블로그 구독하기 부탁드리겠습니다.

* 이 글의 모든 저작권은 aliceintr에 있으며 무단 배포 및 사용은 자제해 주시기 바랍니다. *

반응형

'DevOps > GIT' 카테고리의 다른 글

github#6 git merge conflict  (0) 2020.11.20
github#5 git HEAD file  (0) 2020.11.20
github#4 branch  (0) 2020.11.17
github#3 gistory and git rm  (0) 2020.11.16
github #2 github reset  (0) 2020.11.16