Git 기본 pull,push

2022. 11. 30. 11:49개발/기타

개발을 하면서 community 활동이 중요하다는 것을 느낀다.

서로 잘 모르는,  잘 아는 부분을 공유하면서

수시로 검토하며 피드백을 줄 수 있는 환경의 중요성을 느낀다.

 

현재 내 개발 환경은 그런 부분이 많이 부족하다.

나중에 다른 회사를 가더라도

Git Notion 등의 협업 툴을 잘 사용할 수 있도록

Git에 대한 기본 지식을 기록할 예정


GitLab

Gitlab에서 blank project를 생성 

Private project를 README 파일 없이 생성한다.

생성된 프로젝트에 위와 같이 기본 안내문이 제공된다.

 

내가 프로젝트를 진행하면서

다른 팀원들과 파일을 공유한다는 가정하에 

push, pull 기능을 테스트 해본다.

 

C 드라이브에 테스트용 폴더를 생성한다.

cmd 를 실행 후 해당 프로젝트 폴더로 이동한다.


1. 디렉토리와 Git 연동

git config --global user.name " "
git config --global user.email "choiprin@gmail.com"

gitlab에 설명되어 있는대로 명령어를 실행한다.

git init
git remote add origin git@gitlab.com:choiprin/test.git

git init 명령어를 실행하면 해당 디렉토리에 .git 파일이 생성됨

fsutil file createnew README.md 1

윈도우에서 mac의 touch 명령어를 대신해 사용하는

fsutil file createnew 파일명 파일길이 를 입력한다.

임의로 markdown 파일을 생성했다.

위와 같이 생성후 dir 로 확인해보면 README.md 파일을 확인할 수 있다.

git add .
git commit -m "Initial commit"
git push origin master

순서대로 위와 같이 실행한다.

commit은 파일이 올라갈 때 간단한 메모를 나타내고

git push 는 master branch 에 push 하는 명령어다.


2. Push 오류

push 를 시도했지만 key 허가 관련 메시지가 출력됐다.

이를 해결하기 위해 자료 조사를 해보았는데

git 을 연동하기 위해서 key가 필요하고

그 key는 git bash 에서 다운받을 수 있다.


3. git bash에서 key 생성

1. git 을 다운로드 받는다.

2. 다운로드 후 Git Bash 실행한다.

ssh-keygen

3. 위 명령어를 입력해 key 를 generate 한다.

위와 같이 key경로를 선택하라 하는데

enter 로 default값을 정해준다.

다음은 password 지정인데 

마찬가지로 enter 입력해서 default로 지정한다.

key가 생성되면 해당 경로로 이동해 확인한다.

생성된 id_rsa.pub key를 메모장으로 열어보면 확인할 수 있다. 해당 key를 복사 한다.


4. gitlab 에서 key 적용

edit profile 로 이동

SSH Keys 카테고리로 이동 후

복사했던 key 를 입력한다.

Expiration date를 지정하지 않으면

적용 기간이 무기한으로 설정된다.


5. Push 재시도

다시 git push origin master 입력 하면

정상적으로 push 된다.

gitlab 의 프로젝트로 이동해보면

CLI 로 생성한 README.md 파일이 push 되어있는 걸 확인할 수 있다.


6. Pull 시도

이번에는 git에 특정 파일이 있다고 가정하고

그 파일을 내가 수정해서 업로드 하기 위해

git에서 pull 을 시도 해보았다.

 

방금 생성한 README.md 파일은 수정이 불가능해서

새로 파일을 생성해 진행해보았다.

 

README2.md 파일을 생성했다.

기존 README.md 와 다르게 내부에 코드를 작성했다.

 

git pull origin master

위와 같이 pull 명령어를 실행해보았다.

해당 디렉토리에 README2.md 파일이 가져와졌다.

이런 식으로 팀 프로젝트를 진행할 때

gitlab에 업로드 해놓고

수정할 파일들을 pull,push 하면서

코드 수정을 진행하면 용이할 것 같다.

'개발 > 기타' 카테고리의 다른 글

개념다잡기( DBMS, RS-485 )  (0) 2023.04.18
Dart 입문  (2) 2023.01.05
Linux( Ubuntu )실행 환경 구성  (0) 2022.11.29