티스토리 뷰
깃허브의 사용에 앞서 Git 을 설치와 깃허브 로그인 되어 있음을 가정한다.
먼저 깃허브에서 사용되는 단어부터 알아보면
커밋 : 파일을 추가하거나 변경내용을 저장소에 저장
푸쉬 : 파일을 추가하거나 변경내용을 원격 저장소에 업로드
여기서 저장소에도 2가지로 나뉜다.
로컬 저장소 : 보통 자신의 컴퓨터 내 저장소
원격 저장소 : 서버 등 네트워크에 올려진 저장소, 여기선 Github내 저장소를 의미
보통 로컬 저장소에서 작업을 수행 후 원격 저장소로 업로드하면서 작업을 마친다. 즉 커밋을 한 후 푸쉬를 한다
브랜치 : 수행하는 프로젝트의 여러 버전을 병렬적인 유지 보수를 위하여 사용
인덱스 : 저장소에 커밋 할 준비를 하기 위해 변경내용을 임시로 저장할 위치
각 파일들을 커밋을 하면 인덱스에 임시 위치하게 되고 이를 푸쉬하면 원격 저장소에 저장이 되게 된다.
브랜치를 이용하여 대규모 프로젝트여도 각각 개발이 가능하고 프로젝트를 나누고 합칠 수 있다.
Github 원격저장소에 파일을 저장하기 까지 5단계로 나눠보자
1. 저장소 작성(git init) 또는 깃허브 복제(git clone)
여기서 입력하는 명령어는 모두 bash에 작성하였다. VS Code에서 새 터미널, Bash를 선택해 주자
mkdir 'testdir' //'testdir' 의 이름을 가진 folder를 생성 후
cd 'testdir' //'testdir'폴더에 들어간다.
git init //'testdir' 폴더를 git 저장소로 지정한다.
2. 파일의 작성, 편집
깃허브에 올릴 파일을 작성한다. test.html이라는 파일을 작성하였다.
3. 파일의 생성, 변경, 삭제를 git 인덱스에 추가 (git add)
git add test.html //git 저장소 안 파일을 git 인덱스에 추가
혹은
git add -A //디렉토리 내 모든 파일을 add
4. 변경 결과를 로컬저장소에 커밋 (git commit)
git commit -m "test html commit!"
git status //커밋 되었는지 확인해보자
5. 로컬 저장소를 푸쉬해 원격저장소에 반영 (git push)
git remote add origin https://github.com/[사용자명]/[레퍼지토리 이름] //원격저장소의 정보를 추가
git push origin master //로컬저장소의 변경상황을 Github 원격저장소로 master 브랜치로 옮김
브랜치의 사용법을 알아보자
1. 브랜치 생성, 이동
git branch //현재 브랜치 목록 살펴보기
git branch subdir01 // subdir01의 이름을 가진 브랜치 생성
git checkout subdir01 // 브랜치를 subdir01로 변경
혹은 다음과 같은 명령어로 한번에 할 수 있다.
git checkout -b subdir01 // 브랜치 생성 및 이동
2. 브랜치에서 개발 작업
3. 브랜치에 푸쉬
git add test.html
git commit -m 'add test file'
git push origin subdir01 //origin 원격저장소의 subdir01 브랜치에 commit된 파일을 저장
4. 브랜치에서 풀
공동 개발 환경에서 다른 개발자가 풀 명령을 통해 작업 내용을 브랜치에서 가져올 수 있다.
git checkout subdir01
gut pull
ls //로컬파일 목록 확인
5. 브랜치 병합
각 브랜치서 테스트가 완료 시 메인 브랜치로 각 브랜치를 통합할 때가 있다.
git checkout master //현재 브랜치를 master로 변경
gut merge subdir01 //subdir01 브랜치의 결과를 master 브랜치로 합침
git push origin master
6. 브랜치 삭제
git branch -d subdir01
이를 이용하면서 도움 될만한 깃허브 명령어를 소개하고자 한다.
1. git log : 로컬 저장소의 커밋 히스토리를 탐색
2. git grep : 저장소의 파일 내용에서 검색
3. git clone : 기존 원격 저장소를 로컬에 다운
4. git remote : 원격 저장소 이름목록 표시
- git remote -v: 원격 저장소에 대한 자세한 목록표시
- git remote add [name] [url] : 원격 저장소를 추가
- git remote rm [name] : 원격 저장소를 제거
5. git reset : 로컬 저장소의 커밋을 취소하기 위하여 사용
- git reset -soft HEAD ^
그리고 내가 사용하면서 종종 사용했는 알쓸신잡 명령어도 소개하겠다. 이는 추후에 천천히 업데이트하겠다.
1. 레퍼지토리의 특정 브랜치만 clone : git clone -b {branch_name} --single-branch {저장소 URL}
그리고 앞서 사용한 mkdir , cd 와 같이 알아두면 도움될 만한 리눅스 명령어 몇가지도 소개하겠다.
1.pwd (print working directory) -현재 사용자가 위치하고 있는 경로를 출력해줌.
2.ls (list) -현재 위치한 디렉토리에 있는 파일과 디렉토리 리스트를 보여줌
-options -ls -l : 파일과 디렉토리에 대한 내용을 구체적으로 출력함
-(권한 소유계정 그룹계정 파일크기[Byte] 생성날짜 파일이름)
-ls -a : 현재 디렉토리에서 숨김파일을 포함하여 출력함
-ls -li: ls-l상태에서 inode번호를 함께 출력함
-ll: ls-l과 동일함
3.mkdir (make Directory)
-디렉토리를 생성함
-mkdir [dirName]
4. touch
-빈 파일 생성
-touch [fileName]
5. rm (remove)
-파일삭제 명령
-.rm fileName -rm -r dirName (-f 옵션이 없으면 directory는 지워지지 않음)
6.cd (change Directory)
-디렉토리를 이동함
-cd path 8. mv (move)
-파일, 디렉토리를 이동시키거나 이름을 변경시키는 명령어 -mv file1 file2 (이름변경) -mv file1 dir1 (file을 dir로 이동시킴) -mv dir1 dir2 (dir1을 dir2 하위로 이동)
7.cp (copy) -파일, 디렉토리를 복사함
-cp file1 copy_file
-cp -r dir1 copy_dir (-r 옵션이 없으면 directory복사 안됨)
Reference
https://dololak.tistory.com/304
https://tagilog.tistory.com/377
'짤막한 지식' 카테고리의 다른 글
RARS를 이용한 RISC-V ARM Simulation (1) | 2023.05.21 |
---|---|
크로스컴파일 및 어셈블리언어 분석 (2) | 2023.05.01 |
[JS][TIL] JS의 내장함수(fill) (2) | 2023.01.18 |
[JS][TIL] 개행문자 없이 로그출력 (process.stdout.write()) (0) | 2023.01.15 |
[Python][TIL] 파이썬의 문자열은 string[n] = '*' 로 수정할 수 없다. (0) | 2022.09.18 |
- Total
- Today
- Yesterday
- 부트캠프
- 로딩성능
- Not Working
- 모노레포
- 이미지최적화
- 인프콘 2023
- 리뷰
- 국비지원
- 개발자 회고
- 성능 개선
- FE 주니어
- 깃허브
- Github Actions
- FE
- JavaScript
- no found
- next 14
- netlify
- 깃허브 사용법
- Vercel
- RARS
- ci/cd
- 사이드프로젝트
- 국비지원취업
- 프론트엔드개발자
- Tailwind CSS
- 성능 측정
- kpt
- 프론트엔드 성능
- 패스트캠퍼스
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |