✨ file
- pwd : 폴더 경로 확인
- ls : 디렉토리 안 파일 및 타 디렉토리 확인
-> -a : ==all (숨김 파일까지 다 확인)
- cd : 디렉토리 이동
-> ~ : 홈 디렉토리로 이동
-> .. : 상위 디렉토리 이동
-> 디렉토리명 : 디렉토리 이동 (C드라이브 루트에서 시작한다는 걸 잊지 말기)
- mkdir 디렉토리명 : 디렉토리 생성
- rm : 디렉토리 삭제
-> -r : 해당 디렉토리 하위 파일까지 모두 삭제
- clear : cmd 창 비우기
✨ branch
- git branch : 깃 브랜치 확인 (로컬)
-> "브랜치명" : 브랜치 생성
-> 현재 브랜치가 기반이 되어 브랜치가 생성되므로 주의할 것
-> "브랜치명" -d : 브랜치 삭제 (현재 작업 중인 branch 삭제 불가능)
-> -r : 원격 브랜치 확인
-> -a : 모든 브랜치 확인
- git checkout "브랜치명" : 브랜치 변경
- git checkout -b "브랜치명" : 브랜치 생성 및 변경
✨ 브랜치 동기화
생성
1. 로컬에서 브랜치 생성 -> 원격 동기화
- git branch "브랜치명"
- git push origin "브랜치명"
2. 원격에서 브랜치 생성 -> 로컬 동기화
- 1) 브라우저에서 만든 경우 : git fetch
- git checkout "브랜치명" : 원격에서 만든 브랜치로 이동하면 알아서 연결해준다
삭제
1. 로컬에서 브랜치 삭제 -> 원격 동기화
- git branch "브랜치명" -d
- git push origin "브랜치명" -d
2. 원격에서 브랜치 삭제 -> 로컬 동기화
- git fetch -p origin
- git branch "브랜치명" -d
-> 커밋 있으면 오류 남!
✨ Repository 생성
1. git init
-> Repository & main branch 생성
-> 로컬에 리포지토리 만들기
-> git init "리포지토리명" -> 리포지토리 뚝딱
2. git remote add origin "깃허브 주소" : 원격 저장소 등록
-> remote : 원격 저장소를 관리할 수 있는 명령어
3. git add
-> git add 파일명 : 특정 파일 추가
-> git add . : 해당 폴더 전체 파일 추가
4. git commit -m "commit 메시지"
5. git push origin main
✨ Pull
1. git pull origin main
2. git clone "깃허브 주소"
✨ clone vs fork
clone
- 피쳐별로 브랜치 파서 pr 올릴 때 사용
- 원격 저장소를 로컬 환경으로 복제해 오는 방법
- 코드, 히스토리, 브랜치 등을 로컬 환경에 복제
fork
- origin에서 upstream으로 pr 올릴 때 사용
- 다른 사람의 원격 저장소를 복제해서 내 저장소를 따로 만드는 방법
- fork 후 clone해 작업
- 원본 프로젝트와 완전히 분리된 환경에서 작업하여 코드를 안전하게 수정할 수 있다
✨ 협업
1. GitHub 리포지토리 모아두는 디렉토리로 이동 (ex, ajeong/Documents/GitHub)
2. $git init "리포지토리명" // 디렉토리(로컬 리포지토리) 생성
3. cd "2번에서 생성했던 리포지토리명" : 2번에서 생성한 리포지토리로 이동
4. git config user.name "사용자명"
5. git config user.email "이메일 주소"
6. 위에 썼던 push와 동일 (이지만 계속 써 보자면) git remote add origin "깃허브 주소"
7. vim viewtest.txt
-> 꼭 이거일 필요는 없으나 아무거나 써서 올리자는 취지
8. git add .
9. git commit -m "커밋 메시지"
10. git branch -M main (이름 바꾸기)
11. git push origin main
12. 작업 진행 전 clone
-> git clone "깃허브 주소"
✨ 정리
1. 브랜치 main으로 바꾸기 (master -> main)
2. 초기 설정 (init, name & email)
3. 원격 저장소와 연결
4. 로컬에 리포지토리가 없는 경우 clone (or fork)
✨ 참고 자료
https://12716.tistory.com/entry/Git-GitHub-%ED%98%91%EC%97%85%ED%95%98%EA%B8%B0
'Tool' 카테고리의 다른 글
[Intelij] 기본 단축키 (0) | 2024.01.06 |
---|