git checkout
[git reflog](https://texonom.com/git-reflog-43b06fe5fac0441a986f701dcd8e691c) 


### HEAD가 가르키는 것(브랜치나 버전)을 바꾼다
checkout is deprecated to
[git restore](https://texonom.com/git-restore-28582677e0e04af0b94971d7a87c2a0e) + [git switch](https://texonom.com/git-switch-65caf9bc3eed4046a11eb00bba24f05e) 

### same
```typegit checkout -t origin/branch# 이동하면서 만들기 브랜치git checkout -b 생성할브랜치이름 원격브랜치이름git checkout -b <your-branch> <sha>```
이렇게 하는 이유는 Subversion과는 다르게 git같은 경우는 여러개의 원격저장소를 연결할 수 있고 그중에는 브랜치명이 겹칠 수도 있기 때문으로 보입니다.

> t is tracking
> b is branch

```typegit fetchgit checkout ~```
### origin
```typegit checkout branch(or version id) // change head reference```


> [Reset VS Checkout - GIT4 - Reset & Revert](https://opentutorials.org/module/4032/24532)






