ls
: 현재 위치의 파일 및 디렉토리 리스트
(ls -a)
: 현재 위치의 숨긴파일까지 보기
cd
: 디렉토리 위치 변경 (ex: cd document)
pwd
: 현재 위치 디렉토리 위치 출력
mkdir
: 디렉토리 생성
..
: 상위 디렉토리로 이동
Git의 구조
branch
개발의 한 갈래
repository를 생성하면 main branch가 생성되고, 그 하위 branch에서 기능을 구현 후 add, commit, push의 과정을 거쳐서 remote repository에 변경된 내용을 올리거나 합친다
repository
local repository : 현재 사용중인 pc의 저장소
remote repository : 원격의 프로젝트 저장소
add
commit
- 데이터가 저장되온 히스토리의 한 지점
- 현재 프로젝트의 상태를 스냅샷으로 저장하는 행동
push
pull
fech
merge
add commit push pull fech merge
- 새로운 repository 생성
- 1번 이후 변경 사항이 있을 때
- branch, merge 사용법
- 충돌 시 해결 방법
- 풀리퀘스트 보내기
Github에서 새로운 repository 생성 후에 로컬에서 작업한 내용을 올리기 위한 명령어 순서
명령어 입력 순서
git init
git add .
git commit -m “commit message”
git remote add origin repostory주소
git push -u origin master
-m
으로 커밋 메세지 작성-u
를 쓴다면 다음번 부터 git push만 입력해도 origin의 master로 푸시가 된다.1번 과정 이후에 변경 사항이 있어 push를 하고 싶을 때 순서
명령어 입력 순서
git add .
git commit -m “commit message”
git push origin main
과정은 1번과 같으나 init과 원격 저장소 등록을 할 필요가 없다
협업을 할 때 많이 쓰는 기능 branch, merge 이름 그대로 가지를 치고, 합치는 방법이다
명령어 입력 순서
git branch 브랜치이름설정
git checkout 브랜치이름
git add .git commit -m “commit message”
git push origin 브랜치이름
git checkout master
git merge 브랜치이름
위의 과정으로 master에 새로운 브랜치를 merge할 수 있다
pull이나 push를 했을 때 원격저장소의 내용과 로컬폴더내의 내용중 같은 라인에 다른 내용이 있다면 충돌 발생
오픈소스를 만들 때 가장 많이 쓰는 방법
내가 push한 내용을 repository의 마스터 권한을 가진 사람에게 pull 해달라고 요청하는것
우선 참여하고 싶은 repository에 들어가 오른쪽 상단의 fork로 나의 repository에 복사해옴
명령어 입력 순서
git clone 원본 repository주소
git remote add 나의repo이름설정 나의 repository주소
git remote -v
git pull origingit checkout -b 브랜치이름(이슈)설정origin/master
git push 나의 repository이름 브랜치이름
모든 작업 후에
나의 repository에 푸시한다
위의 과정 이후에 github에서 fork한 나의 repository에서 방금 푸시한 브랜치명을 선택 하면 옆에 Pull request 버튼이 생기고, 절차에 따라 누르면 풀리퀘스트가 진행된다.
여기서도 충돌이 발생할 수 있으니, 코드를 보며 적절히 수정해주면 된다.