대충벌레 블로그
article thumbnail
728x90
반응형

안녕하세요 대충벌레입니다.

Git을 처음 접하면서 명령어가 어려울거란 판단에 깃허브 데스크탑을 사용했습니다.

근데 명령어로 공부하는게 도움될거 같아 정리를 해보려고 합니다.

참고한 블로그는 갓대희의 작은공간이라는 블로그보며 공부했습니다.

 

기초 용어 

Repository(저장소)

프로젝트 관련 내용을 저장하는 공간입니다. 특정 레포지토리를 내려받을때(Clone) 레포지토리를 가리키는 URL이 필요한데 , 마지막 .git 확장자로 표시하게 됩니다.

 

Branch(작업공간)

최초 Git 초기화(생성)시 기본적으로 Main [Master] 라는 브랜치가 생성이 됩니다

추후에 버그 픽스나 여러 프로젝트시 브랜치를 나눠서 작업하게 되고

Main[Master]로 다시 합치는 작업을 하게 됩니다.

 

git init 

로컬 저장소를 사용할 폴더를 생성후에 해당 폴더로 이동합니다. 

해당 폴더에서 우클릭후 git bash를 실행한뒤 git init 명령어를 실행합니다.

저는 이클립스 프로젝트 생성후 생기는 폴더에서 테스트 해보겠습니다.

스프링 프로젝트 생성후 그 폴더로 들어왔습니다. 마우스 우클릭후 Git Bash Here을 눌러줍니다.

git init 명령어를 실행하시면 폴더에 숨긴파일 .git 폴더가 생성됩니다. 폴더가 보이지않으면 보기속성에서 숨긴항목 표시를 체크해주세요.

.git 폴더에는 저장소에 필요한 뼈대 파일이 있습니다.

 

git status

파일 상태 확인 명령어 입니다.

On branch : 현재 작업중인 branch 입니다. (기본 브랜치는 master 입니다. )

저는 스프링 프로젝트에 생성해서 사진의 빨간색 부분 파일들이 커밋이 되지 않았다고 하는거 같습니다.

파일상태 2가지

Untracked 상태 : 단어 의미대로 추적되지 않고 있는 파일이란 뜻 , 즉 파일을 생성한 후 한번도 add 하지 않은상태

 

Tracked 상태 : 파일이 Git에 의해 그 변동사항이 추적되는 상태 , 이 상태는 특성에 따라 3가지로 나뉩니다.

 

  • Staged 상태 : 파일 수정 후 staging area에 올라가 있는 상태
  • Unmodified 상태 : 현재 파일이 최신 커밋 파일과 비교하여 바뀐게 없는 상태
  • Modified 상태 : 현재 파일이 최신 커밋 파일과 비교하여 바뀐게 있는 상태

파일추가 및 커밋

파일 추가 git add 옵션 파일

이제 git에 파일을 추가를 해봅시다.

위에서 untracked 된 파일을 add 해 보겠습니다.

- 옵션 : -A , --all 변경된 모든 파일을 추가합니다.

신규 파일을 폴더에 생성하시거나 저와 같은 스프링 프로젝트가 아니시라면 test.txt등으로 테스트하시면 됩니다.

 

git add .
git status

파일 삭제 git rm 옵션 파일명

잘못 추가된 파일을 삭제하는 명령어 입니다.

- 옵션 : -f,--force 강제 삭제

          --ignore-unmatch : 삭제하려는 파일이 없을 때 발생하는 에러 무시

 

git commit

변경사항 확정을 할때 사용하는 명령어 입니다.

git commit -m "커밋메세지" : -m 옵션은 커밋메세지를 붙일때 사용하고 여러줄 커밋메시지일 경우 여러개의 -m을 사용하여 처리가 가능하빈다.

 

git commit -a : 별도의 add 명령어를 사용하지 않고 수정된 파일에 대해 자동으로 add를 진행한후 커밋합니다

단 add되지 않은 파일은 add를 따로 작업해야 합니다.

 

git commit -am "커밋메세지" : a옵션과 m옵션을 합친형태입니다.

git log

커밋 기록을 확인합니다 

Author는 git config 명령을 통해 세팅한 user.name 과 user.email 값이 표기 됩니다.

 

git diff

옵션은 --staged 이며 마지막 커밋과 차이를 확인합니다.

 

 


Git 원격 저장소 생성

깃허브 사이트에서 New를 누르고 git 저장소를 생성해줍니다.

Repository name은 사용할 저장소 이름입니다 , 즉 프로젝트 명입니다.

Public과 Private는 공개와 비공개 , 즉 모두 볼수있는가 아니면 내가 설정한 사용자만 볼수있는가

나머지 옵션은 체크하지 않고 Create repository를 눌러줍니다.

저희는 위에서 Local Repository를 생성했기 때문에 두번째의 push an existing repository 커맨드를 따라해주면 됩니다.

문법은 git remote add [repo이름] [repo 경로] 경로는 위에 보이는 URL을 쓰시면 됩니다.

git remote add origin https://github.com/inthegun/GitTest.git

git remote 명령어를 통해 추가한 원격저장소의 목록을 확인 할수 있습니다. 상세정보는 옵션 -v 를 이용합니다.

git remote show [repo 이름]은 특정 원격 저장소의 정보를 확인이 가능합니다.

git remote rm [repo 이름]은 원격 저장소를 제거합니다.

git push

git push [원격 저장소 이름] [브랜치명]

로컬 저장소에 커밋[commit]한 파일들을 원격 저장소에 추가하는 명령어 입니다.

 

우선 README.md 파일을 생성해 줍니다.

echo "# GitTest" >> README.md

파일 생성 확인과 커밋을 해줍니다.

마지막으로 PUSH 작업입니다.

git push -u origin master

첫 작업이라면 계정을 인증하는 브라우저가 뜨게 됩니다. 인증하시면 처리가 됩니다.

GitHub에 들어가시게 되면 정상 업로드가 되있는걸 확인할수 있습니다.

 

git clone [repo 주소]

git clone https://github.com/inthegun/GitTest.git

협업시 처음에 프로젝트를 가져와야 할때 clone 명령어를 사용합니다.

 

git pull [원격 저장소 이름] [브랜치명]

git pull origin master

git fetch에서 하는 원격저장소 변경사항을 가져와서 지역 브랜치에 합치는 작업을 합니다. 

즉 다른 사람들의 작업 변경사항을 자신의 작업환경에 내려받게 됩니다.

 

반응형

'IT 기술 > 깃허브[Git]' 카테고리의 다른 글

Github Private Repository Clone Error Issues  (0) 2023.07.01
profile

대충벌레 블로그

@대충벌레

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!