git/git 연습

1 - Git 기초

backend dev 2024. 3. 6.

Git Init  - git 저장소 생성하기

Git으로 버전 관리를 하고 싶은 디렉토리로 이동 후 git 저장소를 생성해준다. 

cd 경로명

 

원하는 디렉토리로 이동 후 git status 명령어를 통해 현재 위치에 이미 Git저장소가 생성되어있는지 확인합니다.

git status

1 -  Git 기초 - Git Init  - git 저장소 생성하기
현재 위치에 git 저장소가 없다는것을 확인

 

 

git init 

1 -  Git 기초 - Git Init  - git 저장소 생성하기 - undefined - git init 

git init

명령어를 실행하면, 현재 디렉토리를 기준으로 Git 저장소가 생성됩니다.

 

다시한번 git status를 해보면 

1 -  Git 기초 - Git Init  - git 저장소 생성하기 - undefined - git init 
어떤 브랜치인지, 커밋 내역이 표시됩니다. == git 저장소가 잘 생성되었다.

 

 

git remote

방금 생성한 로컬 git 저장소를 github의 원격 저장소(리포지토리)와 연결하고 싶을때 사용하는 명령어

1 -  Git 기초 - git remote

github에 리포지토리 생성후 Code 버튼을 눌러서 HTTPS의 링크를 복사해줍니다.

git remote add 별칭 복사한url

위의 방법 혹은

git remote add origin https://github.com/본인 계정명/리포지토리명.git

 

ex)

git remote add origin https://github.com/wogus4048/git_study_practice.git

 

1 -  Git 기초 - git remote
git remote -v 로 별칭과 연결된 원격 리포지토리에 대해 확인할 수 있다.

 

git commit, git log

새로 파일 생성 후 git status로 Untracked files를 확인한다.

1 -  Git 기초 - git commit, git log
새로 생성된 파일이 Untracked files에 추가됨

 

1 -  Git 기초 - git commit, git log
git add .로 생성되거나 수정된 모든 파일이 커밋 준비 단계에 들어감

 

1 -  Git 기초 - git commit, git log

git commit -m "커밋메시지"

 

1 -  Git 기초 - git commit, git log
git log로 커밋된 내역을 확인할 수 있다.

 

git ignore 연습

1 -  Git 기초 - git ignore 연습

 

ignore 연습용 파일 ignore.txt를 만들었다.

git status에 추적되지않고있는 파일로 표시되어있다.

1 -  Git 기초 - git ignore 연습

 

.gitignore 파일을 생성후 그 안에 ignore.txt를 추가해서 

ignore.txt를 git 저장소에서 관리하지않도록 한다.

1 -  Git 기초 - git ignore 연습

그 후 다시 git status를 해보면

ignore.txt가 사라진것을 확인 할 수 있다.

 

Git push

git push 원격저장소별칭 브랜치
예시 ) git push origin main

1 -  Git 기초 - Git push

에러 발생 -> 원격 레포지토리에 readme 파일이 있고 readme 생성하면서 커밋을 진행했다.

로컬 git 저장소와 커밋내역이 다르므로 오류가 발생한다.

1 -  Git 기초 - Git push
git pull 에러 발생

해결방법

git pull --allow-unrelated-histories origin main

 

https://www.lesstif.com/gitbook/git-push-pull-fatal-refusing-to-merge-unrelated-histories-86311254.html

 

원격저장소에 커밋까지 병합에 성공한후 다시 git push 진행

1 -  Git 기초 - Git push
'
1 -  Git 기초 - Git push
ignore 설정한 파일은 올라와있지않은것을 확인할 수 있다.

 

 

 

 

git clone

원격저장소의 리포지토리를 로컬로 가져오는 방법

 

방금위에서 만든 리포지토리를 다른 디렉토리에 가져오려고한다.

1 -  Git 기초 - git clone
git_clone_prac 디렉토리에 git저장소가 없는것을 확인

 

1 -  Git 기초 - git clone
저장소의 url 복사

 

git clone 복사한url

 

1 -  Git 기초 - git clone
git clone 진행 완료
1 -  Git 기초 - git clone
프로젝트 폴더가 생성된것을 확인할 수 있다.

 

clone과 remote의 차이

clone (동) 복제하다
remote (형) 원격의

 


두 단어의 사전적 정의를 보면 알 수 있듯이,


clone 

 GitHub repository에 있는 내용을 내 로컬(컴퓨터)에 ‘복제’하는 명령어다. 

즉, repository에 있는 파일을 내 로컬의 특정 디렉토리로 가져올 수 있다.

 

remote

 

Git 홈페이지에 보면 “Manage set of tracked repositories”라고 나와있다.

 원격 저장소와의 작업들을 관리하는 명령이다. remote 명령어로 원격 저장소를 연결/확인/변경할 수 있다.

remote add와 clone의 차이에 대해서 묻는다면,
clone은 remote add를 한 다음 pull(또는 fetch & merge)까지 하는 것이라고 할 수 있겠다.

 

1 -  Git 기초 - remote
git clone 후 remote 된 원격저장소 목록을 보면 알아서 등록되어있다.

 

 

 

 

'git > git 연습' 카테고리의 다른 글

git stash, cherry-pick  (2) 2024.03.22
git 롤백, git branch,pull request,fetch,rebase  (0) 2024.03.13

댓글