개발/기타

자주 쓰는 git 명령어

희운1205 2024. 6. 20. 13:35
반응형

자주 쓰는 git 명령어

1) 저장소 로컬 복제(Clone)

git clone <저장소URL> : 저장소를 로컬 컴퓨터로 복제합니다.

예) 
git clone https://github.com/username/repository.git
* username은 GitHub 사용자명, repository는 저장소 이름

2) 업데이트  확인(Status)

git status : 업데이트 파일 및 커밋 상태를 확인합니다.

3) 업데이트 파일 추가(Add)

git add <파일명> : 변경된 파일을 스테이징 영역에 추가합니다. (파일명 생략하고 .(점)을 찍으면 전체)

예) 
git README.txt (특정파일)
git add .(전체)

4) 업데이트 내용 커밋(Commit)

git commit -m "내용" : 스테이징 영역에 추가된 변경 사항을 커밋합니다.

예)
git commit -m "새내역"

5) 원격 저장소에 업데이트 내용 푸시(Push)

git push origin <branch_name> : 로컬에서 커밋한 업데이트 내역을 원격 저장소에 업로드합니다.

예)
git push origin <branch_name>

6) 업데이트 내역 가져오기(Pull)

git pull origin <branch_name> : 원격 저장소의 업데이트 내용을 로컬로 가져옵니다.

예)
git pull origin main
git pull origin new-feature

7) 브랜치 생성(Create Branch)

git branch <branch_name> : 새로운 브랜치를 생성합니다.

8) 브랜치 전환(Switch Branch)

git checkout <branch_name>
git switch <branch_name>

예)
- 기존 브랜치로 변경
git checkout <branch_name> 또는 git switch <branch_name>
- 새 브랜치를 생성하고 변경
git checkout -b <new branch_name> 또는 git switch -c <new branch_name>

* 주의사항 
브랜치를 업데이트하기 전에 현재 작업 중인 업데이트 내역이 커밋되지 않았다면, 
업데이트할 내역이 손실될 수 있어 커밋하거나 스태시(git stash)하여 
안전하게 보관한 후 변경 권장함

9) 사용 중인 Git 원격 저장소의 URL 확인

git remote -v

10) 로컬 변경사항 되돌리고 이전 커밋으로 돌아가기

git reset

11) 로컬에서 변경사항을 커밋하지 않고 이전 커밋으로 돌아가기

git checkout HEAD

12) 커밋 로그 확인

git log

13) 로컬 브랜치 삭제

git branch -d <branch_name>
git branch -D <branch_name>
* -d: 브랜치가 병합된 경우에만 삭제하며, 병합되지 않은 사항이 있을 경우 삭제를 차단
* -D: 강제로 브랜치를 삭제하며, 병합되지 않은 사항이 있더라도 강제삭제

예)
git branch -d <branch_name>
git branch -D <branch_name>

14) 원격 브랜치 삭제

git push origin --delete <branch_name>

예) 
git push origin --delete <branch_name>

15) 파일명 변경

git mv <현재 파일명> <새파일명>

예)
git mv oldname.txt newname.txt


* 파일명을 변경전에 현재 작업 중인 업데이트 사항이 커밋되지 않았다면, 
먼저 커밋하거나 스태시(별도 보관)하는 것이 좋습니다. 
그렇지 않으면 소스 충돌 발생하므로  수동으로 파일명으로 바꾼다음에
변경,삭제된 파일을 git에 알려주면 됨


예) 
mv oldname.txt newname.txt (파일명 수동변경)
git add newname.txt (신규 파일 등록)
git rm oldname.txt (이전 파일 삭제)

 

반응형

'개발 > 기타' 카테고리의 다른 글

asp에서 원격 웹서버 내용 갖고 오기  (0) 2023.05.01
Visual Basic 6.0에서 DLL 만들기  (0) 2023.05.01