git

git/github 공부하기

무녀누 2024. 4. 19. 09:50

리눅스 기초 명령어

 

pwd : 현재 작업하고 있는 디렉터리를 출력(파일 경로)

ls : 내 폴더 안에 있는 폴더, 파일 내역을 출력

ls -a : 숨겨진 파일 모두 출력

cd 폴더명 : 입력한 폴더로 이동

cd .. : 현재 폴더 나가기

clear : 터미널 창 클리어

mkdir 폴더명 : 현재 경로에 폴더 생성

touch 파일명: 현재 경로에 파일 생성

 

git이란?

 

코드의 변경점을 기록

버전 관리 도구(현상 관리 도구)

 

github란?

 

백업과 공유가 가능한 온라인 코드 저장소

공유가 가능해서 협업에 용이하다

 

git 명령어

 

git init : 초기세팅으로 시작 전 딱 한 번만 입력 .git이라는 개발자용 폴더가 생성된다.

일반 ls로는 확인이 안되고 ls -a로 확인 가능 .git에서 코드의 변경점을 계속 추적해 준다.

 

git add 파일명 : 저장할 파일 지정 

 

git add . : 저장 안 된 파일 모두 지정

 

git commit -m"" : 큰 따옴표 안에 메시지 작성 후 add 했던 파일을 저장

 

git status : 저장 안 한 파일을 출력

add라도 했으면 초록색 글씨로 출력되고 안 했으면 빨간색 글씨로 출력된다.

 

git log : 저장 내역을 확인하는 명령어(commit 메시지로 코드 변경점 추측 가능)

커밋 내용이 점점 많아지면 :입력이 되는데 방향키 위아래로 커밋 메시지를 찾을 수 있다.

 

q : 나가기

 

git diff : 코드 변경 확인(차이점 확인)

 

git reset : 코드 이전으로 되돌리기

 

git remote -v : 현재 연결된 원격 저장소를 출력

 

git remote add origin (깃허브 주소): 깃허브 주소 생략 명령어 및 원격저장소 연결

 

git branch -M main : 브랜치 명을 main으로 변경

처음 git init을 하면 브랜치명이 master로 설정돼 있는데

master가 노예제도 관련으로 문제가 있다 해서 보통 main으로 변경

 

git push -u origin main : git push 할 때 origin과 main을 생략할 수 있게 함

 

git remote remove origin : origin으로 설정된 원격 저장소를 연결해제

 

rm -rf .git : .git파일 삭제

 

git push (깃허브주소 or origin) 브랜치명 : 추가로 수정된 코드 깃허브에 업로드

 

git clone (깃허브 주소) : 보통 협업할 때 사용하며 폴더를 처음 만들고 팀원의 코드를 복사하기 위해 사용

주소 뒤에 (띄고). 을 적으면 만든 폴더 안에 파일들이 생기지만 (띄고). 을 안 붙이면 내 파일 안에 폴더가

새로 생성돼서 경로를 다시 지정해야 함

 

git pull (깃허브 주소 or origin) 브랜치명 : 협업중일 때 다른 사람이 코드 추가한 것이 있을 때 사용

내 폴더에 변경된 코드를 추가

 

clone과 pull의 차이점은 clone은 처음 시작할 때 아무것도 없으면 clone을 통해 복사하고

pull은 내가 이미 코드를 작성 중이고 push 할 때 다른 사람과 충돌을 방지하기 위해 업로드 전

변경된 코드를 가져와서 충돌을 방지

#기존 깃허브 코드와 내 코드의 변경점이 있으면 push 에러가 나는데 pull을 먼저 하고 push 하면 정상 업로드 된다.

 

충돌 해결하기

같은 파일에 같은 줄의 코드를 변경했기 때문에 코드 충돌이 발생한다

 

<<head@@@@@@@@@@@

내가 짠 코드 

========

팀원이 짠 코드

>>1233523434623465678678232424

이런 식으로 충돌이 발생

먼저 <<head@@ =====  >>127743를 모두 지워주고 

내 코드와 팀원코드를 적절히 수정해서 add&commit 후 업로드해 주면 된다.