일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 그리디알고리즘
- 백준
- 스파르타내일배움캠프
- 리그오브레전드
- 코딩테스트준비
- 탐욕알고리즘
- Django
- 스파르타내일배움캠프TIL
- programmers
- 그리디
- 프로그래머스
- lol
- sort
- greedy
- Riot
- 내일배움캠프
- 코딩테스트
- drf
- 파이썬
- 알고리즘
- API
- 장고
- SQL
- git
- 자바
- github
- 롤
- 라이엇
- java
- python
- Today
- Total
Lina's Toolbox
Git 필수 명령어 본문
CLI: 커멘드 라인(명령어)
-> 기계에게 말을 거는 것!
기본적인 리눅스 명령어
vs 상단에 new Terminal 로 터미널 실행하여 테스트
//윈도우에서 작업시 bash에서 작업할 것
- pwd: 현재 위치를 보여줌
- ~ : Home이라는 경로, 우리가 보는 데스크탑보다 더 상위의 폴더임
- ls: 파일 리스트
- ls -a : list all 숨겨진 파일(보통 .으로 시작함 ex.설정파일들)까지 다 보여줌
- python3 파일명: 파일실행 // vs 파일 탐색기에서 해당 파일 우클릭> 터미널에서 파일실행 으로도 가능
- cd 폴더명: change directory // 마치 데스크탑에서 폴더를 더블클릭하여 들어가는 것과 같은 효과
- .. // 한단계 위의 폴더 -> cd .. 로 현재 폴더에서 나갈 때 사용
- cd ../.. 슬래시를 이용해서 한번에 여러번도 이동 가능
- mkdir 폴더명: make directory 현재 경로에서 폴더 생성
- touch 파일명.확장자 : 파일 생성
Git : 코드 변경점 기록, 버전 관리 도구(형성 관리 도구)
Github: 백업과 공유가 가능한 온라인 코드 저장소
< Git 필수 명령어 >
1. git innit : 코드 관리를 시작(initialize)하는 명령어
프로젝트 시작 1번만 입력하면 된다. (여러 번 입력해도 문제가 되진 않음)
git init을 하면 .git 폴더가 생성된다. (숨겨진 파일이므로 'ls -a'로 확인 가능)
.git
이 폴더가 이어야 코드 변경점을 계속 추적한다.
이게 없다면 뭔가 잘못한 것.
이 폴더가 생긴 시점부터 코드 변경을 git이 추적한다.
❗️정확한 프로젝트 폴더 경로에서 입력해야한다. 잘못하면 데스크탑 전체,파일, 폴더가 다 기록될 수 있음
(pwd로 현재 경로 확인 후 내가 올리고 싶은 코드의 경로와 다르면 cd명령어로 이동 후 git init 실행)
❗️내가 다른 프로젝트를 받아올 때(git clone을 치는 경우)는 사용 X . 내가 리파지토리 만들고, 처음부터 모든 과정을 담당할 때만 사용한다.
2. git add 파일명 : 저장 전 저장할 파일을 지정
💡저장할 파일이 너무 많아서 귀찮은 경우 git add . 으로 한번에 추가할 수 있다.
(하지만 이 방법은 위험하므로 안쓰는게 좋음. git add 파일명1 파일명2 파일명3 ... 으로 파일 여러개 한번에 추가 가능)
git add . 의 ' . ' 은 여기에 라는 의미.
=> 현재 경로에서 모든 변경된 사항
3. git commit -m "커밋 메시지 작성" : 실제로 저장하는 명령어.
커밋 메세지에는 무슨 코드를 짰는지 자세하게 적는 게 좋다.
4. git status : 어떤 파일이 변경됐는지, 어떤 파일이 add(지정)됐는지 등 변경 상태를 확인하는 명령어
코드의 변경은 있지만 저장을 하지 않은 파일은 붉은색으로 표시된다.
5. git log : 저장 내역 확인 (최근 변경점부터 나옴)
6. git push origin main: 변경 사항이 올라가는 코드
Github에서 리파지토리를 생성한 후,
다음 3줄의 코드 복사
git remote add origin 깃허브주소
git branch -M main
git push -u origin main
terminal에 붙여넣기 한다.
=> 별다른 에러 없을 경우 Github 레포지토리로 코드가 올라간다.
git remote add origin 깃헙주소
origin 을 해당 깃헙주소로 저장하겠다.
git branch -M main
현재 브랜치명(master)를 main으로 바꾼다. (바꾸기 싫으면 생략해도 됨)
git push -u origin main
이 명령어를 치고 나면 다음 부터는 got push origin main을 다 칠 필요 없이
git push 라는 명령어만 치면된다.
7. git clone : 코드 복사해오기
git clone <원격저장소주소> .
명령어 뒤에 ' . ' 을 붙이면, 별도의 디렉토리를 생성하지 않고 현재 디레고리에 저장소의 내용을 복제한다.
그냥 git clone <주소> 를 하면
해당 원격 저장소의 이름으로 된 폴더를 생성하고
그 폴더 안에 저장소를 복제함
8. git pull : 다른 사람이 변경한 사항 가져오기
git pull origin 브랜치명
🚨 git pull 시 아래와 같은 경고문이 뜬다면?
git config pull.rebase false
git pull origin 브랜치명
9. 터미널에 아무것도 입력이 안되는 vim 에디터가 뜬다면?
키보드 esc
키보드 :
키보드 wq
키보드 enter
로 빠져나갈 수 있다.
10. 충돌(Conflict) 해결하기
=> index.html 파일에서 충돌이 발생 -> 충돌 해결 후 다시 commit 하라는 뜻
📌 충돌이 발생하는 이유: 같은 파일의 같은 위치에 코드가 변경되었기 때문
충돌 발생한 파일 확인해보기
1. <<<<<<< HEAD 삭제
2. ======= 삭제
3. >>>>>> 4182. 삭제
4. 원하는 코드로 수정
충돌 해 결 후 다시 git add, commit , push 하기
'스파르타 내일 배움 캠프 AI 웹개발 과정 > git' 카테고리의 다른 글
Readme 꾸미기 - 헤더, 뱃지 넣기 (0) | 2024.09.20 |
---|---|
현업에서 자주 사용하는 유용한 협업 툴 소개 / Sourcetree, Jira, Gerrit (1) | 2024.09.13 |
스파르타 코딩 클럽 - 내일배움캠프 12일차 TIL (0) | 2024.07.10 |
Git & Github 으로 협업하는 법 / git branch, git merge, git pull request (0) | 2024.07.04 |
스파르타 내일배움캠프 AI웹개발 과정 | 7일차 복습/ 깃허브 연결된 리퍼지토리 변경하기 (2) | 2024.07.02 |