이외 도구
- Git bash
- Source Tree
참고 사항
- 원격 저장소 생성 : New repository > Create Repository
- 원격 저장소 Address는 <> Code 의 HTTPS = https://github.com/NickName/RepositoryName.git
- 기본적으로 원격 저장소 Branch main, 로컬 저장소 Branch master
- 팀 프로젝트 시 개인 Branch 사용 권장
- 업로드 및 동기화는 원격 저장소의 하나의 Branch로 (main)
- 충돌 방지 위해 push 전엔 pull 이 필수
0. Branch 설정
- 현재 Branch 위치 확인
$ git branch
$ git status - 원격 저장소의 Branch 위치 확인
$ git branch -r - Branch 생성
$ git branch [Branch] - Branch 이동
$ git switch [Branch] - Branch 전환
$ git checkout [Branch] - Branch 삭제
$ git branch -d [Branch] - 원격 저장소의 Branch 삭제
$ git push origin -delete [Branch] - 원격 저장소 연결 해제
$ git remote rm origin - 원격 브랜치와 로컬 브랜치 연결
$ git remote update
1. 업로드
- 프로젝트 터미널 창 열기 (또는 git bash)
- 로컬 저장소 생성 1. Init
$ git init - 원격 저장소와 연결 2. Remote
$ git remote add origin [Address] - 현재 로컬 저장소의 Branch 새 이름으로 변경 3. Branch
$ git branch -M [Branch(main)] - 기존 업로드 내용 추가 4. Pull
$ git pull origin [Branch(main)] - 전체 내용 추가 5. Add
$ git add . - 커밋 메시지와 함께 커밋 6. Commit
$ git commit -m "commit content" - 원격 저장소 Branch(main) 생성, 로컬 저장소 Branch(main)의 내용을 전송 7. Push
$ git push -u origin [Branch(main)]
2. 동기화
- 프로젝트 터미널 창 열기 (또는 git bash)
$ git pull origin [Branch(main)]
$ git add .
$ git commit -m "commit message"
$ git push origin [Branch(main)]
3. 다운로드
- cmd 열기
$ cd [C:\Folder]
$ git clone [Address] [Folder]
4. 병합
$ git add .
$ git commit -m "feat: "
$ git push origin FE/multi/sb
$ git remote update
$ git checkout FE/ik
$ git merge FE/multi/sb
$ git commit -m "feat: "
$ git push origin FE/multi/sb
팀 프로젝트 시
- fork
- fork repository 에서 commit
- 원래 reposity로 pull requests
- merge (현재 fork repository의 내용 모두 merge)
- synk fork
- commit 잘못 생성 시 pull 전에 수정,
- pull requests 잘못 생성 시 AI 고객 센터에 문의
Sign in for Software Support and Product Help - GitHub 지원
support.github.com
git 프로젝트의 파일명 변경
- 파일명의 대소문자 변경
$ git mv [oldFileName] [newFileName]
git 저장소 캐시 삭제
- 캐싱된 파일 삭제
$ git rm -r --cached .
파일 추가 취소
- 모든 파일
$ git rm --cached -r . - 특정 파일
$ git rm --cached [File]
이전 커밋으로 복원
- 프로젝트 터미널 창 열기
- 해당 commit의 왼쪽 Commit ID 드래그하여 복사
$ git reflog
$ git log - 복원 지점 이동 이후 모든 내용 삭제
$ git reset --hard [Commit ID] - 복원 지점으로 이동, 내용 삭제 X
$ git reset --soft [Commit ID] - 복원 지점으로 이동, 인덱스는 초기화
$ git reset [Commit ID]
깃 원격 저장소에 올라간 커밋 되돌리기
- 마지막 커밋으로 이동
$ git reset --hard HEAD^ - 위에서부터 3 만큼 아래의 커밋으로 이동
$ git reset --hard HEAD~3 - 원격 저장소에 강제로 push
$ git push -f origin main
커밋 메시지 변경
- 마지막 커밋 메시지 수정
$ git commit --amend - n 번째 전 커밋 메시지부터 수정
$ git rebase -i HEAD~n - 커밋 메시지 통합
$ git rebase -i HEAD~3
2. 합친 결과 담을 커밋 메시지 제외, 합칠 커밋 메시지들 pick -> s로 수정
3. 커밋 메시지 내용 수정
4. :wq
$ git push -f origin [Branch] - push 후 커밋 메시지 수정
$ git rebase -i HEAD~n
2. 수정하려는 커밋 메시지들 pick -> reword로 수정
3. 커밋 메시지 내용 수정
4. :wq
$ git push origin [Branch] --force
[Git/GitHub] Git Merge 와 GitHub Merge
Git / GitHub 의 Merge 종류 Git Merge 종류 Merge Squash and Merge Rebase and Merge 앞으로 모든 예시에는 기준 브랜치 master로, master 브랜치를 base로 분기된 브랜치를 feature 브랜치라고 부르겠다. 모든 테스트는 fe
haenny.tistory.com
출처 :
[Git] Github 같은 저장소 함께 쓰기(feat. Github Flow)
안녕하세요🍍 Foma🍍 입니다! 오늘은 Git으로 같은 저장소를 함께 쓰면서 협업하는 법에 대해서 정리해보겠습니다. 다양한 협업 방식 중 Gihub Flow에 대해서 다뤄보겠습니다. 바로 시작할게요! (Vis
fomaios.tistory.com
[코드잇] git push -u origin master의 비밀
여러분 git push에 대해서 얼마나 자세히 알고 계신가요? git push에 관해 알아두면 좋은 사실 하나를 배워...
blog.naver.com
[코드잇] git reset의 3가지 옵션 제대로 이해하기
여러분은 Git을 쓸 때 git reset 커맨드를 얼마나 자주 사용하시나요? git reset은 HEAD의 위치를 현...
blog.naver.com
[#git] 여러 커밋(commit) 하나로 합치기
의식의 흐름(?)으로 개발을 하다보면 똑같은 커밋 메세지 또는 대충 쓴 커밋 메세지로 푸시하는 경우가 많다. 이런 경우 커밋 메세지를 하나로 합치거나 수정할 수 있으니 정신이 맑은 날에 한번
korband.tistory.com