2022-05-03(Git)

이상수·2022년 5월 5일
0

TIL Java/Git/etc

목록 보기
6/17
post-thumbnail
  1. 시작하게 된 계기 및 다짐 😮
  • 이번 코드스테이츠의 백엔드 엔지니어링 개발자 부트캠프에 참여하게 되면서 현직개발자 분들의 빠른 성장을 위한 조언 중 자신만의 블로그를 이용하여 배운 것 들을 정리하는게 많은 도움이 된다 하여 시작하게 되었다.

    • 그 날 배웠던 것을 길지 않아도 좋으니 정리하며 복습하는 습관 기르기
    • 주말에 다음주에 배울 내용들을 예습
    • 코딩 문제와 java코드들은 꾸준히 학습
  1. 학습 목표 😮
목표결과
GitHub와 Git의 이해O
Local/Remote Repository 이해O
협업을 위한 Git 이해O
Git 실습O
  1. 정리

Git_Base


#Git_버전 관리 시스템(VCS) : 프로그램의 버전 관리 시스템

# Git : 소스 코드 기록 관리 분산형 버전 관리 시스템   (ex.시스템)
# GitHub : 클라우드 기반 Git Repository 관리 서비스 (ex.블로그)
# 스냅샷 : 특정 시점에 생성된 백업 파일 ( Commit 이용)
# Git_Repository 
 - Local : 나의 작업 공간
 - Remote : 공유 작업 공간   
 - Fork : 다른이의 Repogitory -> 나의 remote_R 로 가져오기
 - Clone : 나의 remote_R -> Local로 가져오기
 - push : 나의 Local_R -> remote_R 보내기 
 - Pull : remote_R -> Local_R 변경 사항을 가져오기
 - commit : 해당 버전 저장(기록)

$ git config --global user.name "나의 사용자 이름"
$ git config --global user.email "내 이메일 주소"
 ==> global 옵션 : 각 다른 이름 사용시 제거
★★ git config --list : git 설정한 모든 것을 보여줌

# SSH : 공개키(비대칭 키) -> $ ssh-keygen 
 ==> id_rsa ( 비밀/개인 키) 와 id_rsa_pub (공개키) 생성

# git config --global core.editor nano : 커밋 시 nano 변경

(참고자료 : https://git-scm.com/book/ko/v2/%EC%8B%9C%EC%9E%91%ED%95%98%EA%B8%B0-Git-%EC%B5%9C%EC%B4%88-%EC%84%A4%EC%A0%95)



# Staging Area : Local_R 로 가져와 git의 관리하에 들어간 상태로 작업하는 공간

Git 실습 과정

# 1. Git _ 혼자 작업하는 순서

($git log : 이력 보기)
$git clone <repogitory 주소> : Remote_R -> Local_R 
 -or 파일 생성 후,
$git init , and  , Github의 레포지토리와 연결(git remote)
$git status : Local_디렉토리의 파일들의 상태 보기
$git add : unstaged(untracked)상태의 파일을 staging area에 올리기
  ==> git add. or git add <file name>
$git restore : 아직 staging에 올라가 있지 않은 파일들을 초기화
$git commit -m "message"
  ==> remote에 변경된 local 내용 변경 
$git reset HEAD^(1)  : 가장 최근에 commit 한 내용을 취소
$git push <origin> <branch>

# 2. Git _ 협업 작업

$git init : 현재 내가 작업하는 폴더로 가서 실행
  ==> git에 연동
$git remote add origin <repository 주소> : Remote_R 과 연동
  ==> Github에 새 repogitory 생성 후 이 주소 
$git remote add pari <repositoy 주소> : 상대방의 remote_R 과 연동
 ==> git remote remove pair  : 페어 해제
$git remote -v : 현재 연결된 모든 Remote_R 보기
$git pull <wanted_name> <branch> : 내 Local_R 에 가져오기 자동병합  
  ex) git pull pair main or git pull origin master
 ==> 오류 발생시 git status 를 통한 파일 확인
 ==> 해당 파일 오류 수정 후 Staging area로 추가
$git add. -> git commit -> git push origin master  

# git merge --abort : 합병 해제

git rm -rf : 원격 저장소(remote repository)와 로컬 저장소(Local repository) 모두 지우는 명령어
git rm -r --cached : 원격 저장소에 있는 파일만 지우는 명령어

  1. 피드백 😮
  • 실제로 현업에서 많이 사용하는 Github를 처음으로 접해 보았는데 페어와 함께 같이 작업을 해보았는데 굉장히 효율적으로 같이 작업을 할 수 있었다.

  • 이는 백엔드 개발자가 아니여도 굉장히 많이 사용할 것이기 때문에 꾸준히 git을 이용하여 commit하며 익혀 놔야 할 것 같다.

  1. 앞으로 해야 될 것 😮
  • 매일 꾸준히 할 것
    • 꾸준히 velog 작성
    • Java 언어 및 Algorithm 공부(Coding-Test)
    • 틈틈히 운동 하기

  • 내일 해야 할 것
    • Java (Main_Lang)
    • 변수 Exercise_problem 풀기
profile
Will be great Backend-developer

0개의 댓글