Study/기술 및 용어 정리

[Git] Git Bash 사용법

토기발 2023. 6. 20. 14:43

이전 프로젝트를 진행할 때는 인텔리제이에서 git을 연동해 푸시하는 방식을 사용했었다.

이번에는 깃의 명령어를 더 잘 익히고자 Git Bash를 사용하기로 했다. 

먼저 Git Bash를 사용해서 유저 정보 설정, 커밋, 푸시하는 방법을 올려본다.

 

 


git bash를 실행한 첫 화면이다.

 

유저 정보 등록

 

유저 이름과 메일주소를 설정한다.

git config --global user.name [유저이름]
git config --global user.email [메일주소]

*Git의 설정 범위는 아래와 같이 3가지이며 일반적으로 이름과 이메일은 global로 설정한다.

  • 지역(local): 특정 저장소에만 한정되는 설정
  • 전역(global): 현재 사용자의 모든 저장소를 포함하는 설정
  • 시스템(system): 해당 컴퓨터의 모든 저장소와 모든 사용자를 포함하는 설정

 

설정내역을 확인해보자.

git config --list

 

아랫쪽에 있다

로컬 저장소(Repository) 생성

 

 

 

저장소로 하고 싶은 폴더에서 우클릭을 눌러 Git Bash Here를 클릭한다.

 

git init

이 명령어를 실행해서 폴더를 로컬 저장소로 설정한다.

(취소 명령어 : rm -r .git )

 

 

Git Hub에 가서 새 레포지토리를 생성하고 주소를 복사한다.

 

git remote add origin [레포지토리 주소]

명령어를 써서 로컬 저장소의 디렉터리와 원격 저장소의 레포지토리를 연결한다.

 

git remote -v

해당 명령어로 연결된 레포지토리를 확인할 수 있다. 

 

잘 뜨는 것을 확인할 수 있다.

 

코드 Push

개발 중인 코드를 비어있는 Git Hub 원격 저장소에 추가한다. 

 

특정 파일만 add
git add [파일이름]

수정된 파일만 add
git add -u      

모든 파일 add
git add ./

add 취소
git reset HEAD [파일이름]

파일 생성
touch [파일이름]

 

나는 첫 커밋이라 모든 파일을 추가하기 위해 git add. 를 입력했다.

 

띠용?

warning: LF will be replaced by CRLF in ~~

으로 시작되는 에러를 검색했더니 줄바꿈 관련 에러라고 한다.

CR(Carriage-Return) : 현재 커서를 줄 올림 없이 가장 앞으로 옮기는 동작
LF(Line-Feed) : 커서는 그 자리에 그대로 둔 상황에서 종이만 한 줄 올려 줄을 바꾸는 동작

결과적으로 CRLF는 CRLF (Carriage-Return+Line-Feed) 로 줄바꿈이라는 뜻이다.

OS마다 줄 바꿈에 대한 문자열이 다르기 때문에 git에서 어느 쪽을 선택해야 할지 경고 메시지를 띄워 준 것이라고 한다.

 

해결 방법은 core.autocrlf라는 기능을 켜주는 것으로,

window, dos의 경우

git config --global core.autocrlf true

linux, mac의 경우

git config --global core.autocrlf input

을 입력해주면 된다.

 

이제는 오류가 안남!

 

git commit -m "커밋문구"

해당 명령어로 커밋 후

 

git push -u origin main

main 브랜치에 푸시한다.

 

Git Hub에 가면 잘 푸시된 것을 확인할 수 있다! 

 

이와중에 깃 레포지토리 주소를 대문자로 변경했다.

이런 경우 혹시 Git Bash에서 문제가 있을지 몰라서 Git Bash에서 원격 저장소 주소를 변경해주기로 한다.

 

 

git remote set-url origin [변경할 원격 저장소 주소]

명령어를 입력하면 변경된다.

잘 변경되었는지 확인하려면 git remote -v 를 입력해 확인할 수 있다.

 

잘 변경되었습니다

 

 

 

 


참고출처

https://computer-science-student.tistory.com/432

https://jellili.tistory.com/24

https://junyoeng.tistory.com/18

'Study > 기술 및 용어 정리' 카테고리의 다른 글

[Git] Stash, Stash pop 사용하기  (0) 2023.06.21
[Git] Git Bash 브랜치 사용법 + pr(Pull Request)하기  (0) 2023.06.20
[AWS] RDS란?  (0) 2023.06.18
[AWS] AWS의 개념 및 특징 (+EC2)  (0) 2023.06.17
클라우드란?  (0) 2023.06.16