Git - Log and Diff

Jungmin·2022년 11월 17일
1

Git

목록 보기
4/6

실습환경 생성 (log_proect)

-> git_ws폴더에 복제 (git clone https://~)

-> 파일 추가 후 저장

cd log_project
cat > hello.py  # `cat > 파일명` : 파일 존재한다면 덮어쓰거나 존재하지 않는 경우 새로 생성
print('hello,world')     # Ctrl+D 저장 후 나가기
git add hello.py
git commit -m "create" hello.py

-> 파일 수정 후 저장

 cat > hello.py
 print('hello, cat')
 git commit -m "modify 1" hello.py

-> Branch 생성 후 이동

git checkout -b dev  # dev이름으로 생성
git branch
* dev
main
cat > hello.py
print('hello, dog')
git commit -m "modify 2" hello.py

⏹ Git log

: 브랜치 별 변경이력을 볼 수 있음.
git log

  • main branch로 이동
git checkout main
git log   # main branch 로그 확인
  • dev branch로 이동
git checkout dev
git log

⏹ Git editor 설정

: 기본 에디터 설정
git config --global core.editor <에디터명> --wait
💡wait 옵션은 command line으로 VSCode 실행시킬 경우, VSCode 종료 시 까지 command창 대기시킴.

⏹ Git Diff

: 버전 간 차이(파일의 어떤 내용이 변경되었는지 차이점)를 조회하는 툴로, vs code를 사용할 수 있다.
working directory와 staging area간 비교도 가능하고 버전(commit)간의 비교, branch간의 비교도 가능하다.

  • git configuration 파일 열기
    git config --global -e
    이때 툴로 vs code 설정하고 실행된 vs code 종료해야 터미널 다시 입력가능하도록 설정해줌.
[diff]
tool = vscode
[difftool "vscode"]
cmd = "code --wait --diff $LOCAL $REMOTE"

✔ Local Branch 간 비교

git diff <branch1> <branch2>

git difftiil <branch1> <branch2> : VS Code 창에서 조회

✔ Commit 간 비교

git diff <commithash> <commithash>
💡 commit hashcode 확인 --> git log 에서 확인 가능 (commit 뒤의 문자열)

  • create와 modify 1 비교
    (create : 'hello, world' / modify 1 : 'hello, cat')

✔ 마지막 commit과 이전 commit 비교

git diff HEAD HEAD^ : HEAD(마지막), HEAD^(마지막 이전)
(마지막 : hello, dog / 이전 : hello, cat)

✔ 마지막 commit과 현재 수정사항 확인

git diff HEAD

--> diff tool에서 마지막 commit과 현재 수정사항(아직 commit은 안함) 비교하기


⏹ local and Remote 간 비교

git diff <branch> origin/<branch2>
origin --> 현재 연결된 remote repository

✔ 마지막 commit과 이전 commit 비교(현재 main 상태를 remote로 push)

  • 아까 수정한 파일 commit (local의 Main branch에만 반영됨)

✔ Local branch와 Remote branch 비교


  • remote : push안된 상태라 내용들이 전달되지 않음.

  • origin (현재 연결된 remote repository)에 push 후 github 새로고침 확인

  • git graph 로 이력 조회

profile
데이터분석 스터디노트🧐✍️

0개의 댓글