GIT

DAY 19 - GIT (2024.07.29)

summ.n 2024. 8. 8. 18:22

 


 

홈디렉토리가 어딘지 확인


D:

Git

lib

workspace


화면지우기 clear

ctrl + L

 

ctrl + C 나옴

 

Q 빠져나오려면

 

cd


ls

디렉토리는 뒤에 /이거 붙는다.


$ ls -l

자세히 보여줌

- → 파일

d → 디렉토리

$ ll

위와 동일하게 나옴


$ rm -rf test.txt


$ rm -rf git_exam

다 지움


$ git --version


$ git config --list

 


Git 저장소

  • 저장소는 관리하고자 하는 모든 소스 코드 및 디렉토리가 저장되는

 

git init

 

 

직접 만들어도 생김


$ rm -rf test/

삭제하기


cd git_repo/



위치 움직일 때


$ git init

초기화 시켜주기



$ rm -rf .git/

일반 디렉토리가 된다.

 


branch 이름 main으로 바꾸기

$ git branch -M main

 


fruit.txt를 git_repo로 복사하기 내 위치

 


$ mkdir git_exam


git_repo 디렉토리 안에 있는 fruit.txt를 git_exam으로 복사

$ cp git_repo/fruit.txt git_exam


$ cat fruit.txt


(1) 기본 용어

  • 트리(tree)
  • 저작자
  • 커미터
  • 커밋 메시지
  • 부모 커밋

워킹 디렉토리

git add

스테이징 영역

git commit

저장소 영역

→ 버전생성 → 로그 확인

 


$git add fruit.txt


아직 커밋하지 않았다.


커밋메시지와 함께 커밋

$ git commit -m "


$ git status


$ git log


내용 수정

$ vi fruit.txt


$ git add fruit.txt

$ git commit -m "Fruit.txt 수정"

$ git log


[파일관점에서 4가지 상태]

 


$ git log -p

파일내요 자세하게 보여줌


$ git log --oneline

한 줄로 보여준다.


 

[과거 특정 시점으로 돌아가는 방법]

  • reset
  • 초기화 (취소)
  • 되돌린 이후 버전 삭제
  • 이미 push한 상태라면 reset 할 수 없다.
  • reset를 했기 때문에 git log를 보면 버전은 사라졌지만 수정된 파일의 내용은 그대로 남아있다.

다시 git add / git commit 해야한다.

 

2. revert

  • 되돌리기
  • 되돌린 이후 버전 유지
  • 버전 아이디를 역순으로 하나씩 되돌려야 한다.
  • revert ~~

 

3. 되돌리기


$ vi Test.java

 


$ git add Test.java


$ git commit -m "aaa"


$ git log --oneline


$ vi Test.java

esc :wq


$ cat Test.java


 

$ git reset --hard

만들거를 취소시킵니다.


이전 상태로 돌아감.


내용 추가

커밋까지 하기


내용 한 번 더 추가하고 커밋까지 하기기



 


Head의 위치를 111로 가게하면

그 전 두 개의 스냅샷을 날려버리는 것이다.

$ git reset 5cbb216

 


파일내용은 그대로이다.


파일 내용 건든것이 아니라 버전만 지운 것이다.


 



$ git reset 5cbb216


 


$ git reset --hard (내용도 삭제가 된다)


[revert]

 


 


<다시해보기>

$ git revert 35c5f3f

내꺼부터 취소하고 올라가야한다.

 

한 단계 한 단계 지우고 가야함.

 


 


내용수정

 


폴더 복사

 

위치 이

  1. git 저장소 만들기
  2. branch 이름 master에서 main으로 변경

 

3. 스테이징 영역 올리기

 

4. 버전 만들기

-------------------------------------------------------------------------------------

  1. 저장소 만들기 => 01_basic

-------------------------------------------------------------------------------------

5. origin 추가

6. 깃허브에 올리기

환경설정같은 경우는 ignore로 안 올릴 수 있다. 필요없으므로


이것도 git에 올려보기

 

 


원격저장소에서 fruit.txt 파일 수정 => 버전 생성

=> Update fruit.txt

 


팀장

  1. 이클립스 Java Project => gitTest
  2. Github에 올리시오
  3. 프로젝트 안에서 Settings 안에서 Collaborators에서 Add people
  4. 팀원 초대

 

팀원

1. 이메일통해서 초대수락

2. 프로젝트 clone