달력

62024  이전 다음

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30

GIT - reset 간단한 사용법 (버전 과거로 되돌리기)



$ git log 명령어를 통해 우리는 여태 기록해왔던 버전 역사를 볼수가 있습니다.

그때 우린 과거 버전으로 돌아갈 수 있습니다.


$ git reset --hard (버전 ID)

버전 ID 는 $ git log 를 통해 나오는 

 

노란색 글씨의 commit 뒤에 붙는 긴 문자가 ID 입니다.


 - 위 명령어를 통해 과거의 버전으로 돌아갈 수 있게 됩니다.




만약! 실수로 과거로 보내버렸다! 하시면 취소도 가능합니다.!


$ git reflog

 - 위 명령어를 실해 하시면 이전 작업들의 목록이 아래와 같이 등장 합니다.

 

$ git reset --hard HEAD@{숫자}

 - 위처럼 HEAD@{인덱스}의 목록이 나타나며 해당되는 인덱스를 입력하여 이전 작업으로 돌아가는것이 가능 합니다.


git reset --hard HEAD@{3} 이런식..




 - reset 사용법 - 

참고 자료 

지옥에서 온 Git - 생활 코딩

URL - https://opentutorials.org/course/2708/15210



 - reset 취소방법 - 

참고 자료

URL - https://88240.tistory.com/284



Posted by JakeGD
|

GIT - 버전관리 활용 log, diff


버전관리(git) 의 기능

  1. 버전 차이점
  2. 버전의 시점
  3. 과거 버전으로 돌아갈 수 있음


$ git log

 - 지금까지의 버전 히스토리를 확인 할 수 있습니다.



$ git log -p

 - 각각의 커밋과 커밋사이의 소스의 차이점을 확인 할 수 있습니다.


위 사진에서 에서 

--- a/f1.txt 이것의 의미는 f1.txt 파일의 이전 커밋된 버전 정보

+++ b/f1.txt 의 의미는 f1.txt 파일의 다음 커밋된 버전 정보 이며


빨간색 글씨로 표시된 

-souce : 2 가 전 버전의 소스 내용 이고

+souce : 3 이 다음 버전의 소스 내용이라는 것을 알려줍니다.


이렇게 버전 간의 차이점을 출력하고 알아볼 수 있습니다.


이번의 위 사진에서는 

--- /dev/null 이라고 출력되어져 있는데 이것의 의미는 이전 버전이 비어있다 없다라는 의미이며

즉 이지점에서 f1.txt 파일을 처음 만들어 커밋한 것으로 알 수 있습니다.



$ git diff (버전ID 1)..(버전ID 2)

 - 버전1 버전2 간의 차이점을 출력하여 비교 할 수 있습니다.


여기서 버전 아이디는 git log 를 통해 출력된 노란색 글씨의 commit 다음의 길게 씌여진 글이 해당 버전의 고유 ID 입니다.


※ 참고 : 복사, 붙여넣기는 Ctrl+Ins (복사)   /   Shift+Ins(붙여넣기)  로 가능 합니다.


$ git diff

 - 마지막 버전의 파일 소스와 git add 직전의 수정된 파일 간의 차이를 출력하여 비교 할 수 있습니다.




참고 자료 

지옥에서 온 Git - 생활 코딩

URL - https://opentutorials.org/course/2708/15209

Posted by JakeGD
|

GIT - Stage Area ( 스테이지 에리어 )



Stage area

  1. git add 명령어를 통해 추가된 파일들이 모여있는 곳
  2. git add 을 하면 Stage Area에 올라가게 된다. 
  3. 또는 커밋 대기 상태 공간



참고 자료 

지옥에서 온 Git - 생활 코딩

URL - https://opentutorials.org/course/2708/15203

Posted by JakeGD
|

Git - Commit ( 커밋 )


먼저 버전에 대해 만든 사람의 정보를 설정 합니다.

해당 정보는 ~/.gitconfig 파일에 저장이 되며 1번 설정해 주시면 됩니다.


$ git config --global user.name ( 닉네임 / 이름 )

$ git config --global user.email ( 이메일 주소 )


이전에 만들었던 f1.txt 파일을 커밋 하도록 하겠습니다.



$ git add f1.txt

f1.txt 파일을 git add 명령어를 통해 추가를 합니다.




$ git commit

명령어 입력시 위 사진과 같이 커밋 메세지 작성 화면이 나타 납니다.

여기에 i를 눌러 커서 활성화 후 커밋 메세지를 입력 후 ( 저같은 경우 3이라고 입력 했습니다. ) 

ESC -> 세미콜론(:) -> wq입력 -> 엔터 

하면 커밋이 완료 되었습니다. 


위와 같이 진행 후 커밋이 완료가 되면 git log 명령어로 확인이 가능 합니다.


$ git log

위 사진과 같이 커밋된 로그가 확인이 됩니다.




참고 자료 

지옥에서 온 Git - 생활 코딩

URL - https://opentutorials.org/course/2708/15202

Posted by JakeGD
|

Git 생성 하기


※ 운영체제 WINDOWS 10 x64bit 기준 입니다.


깃을 사용하기 앞서 Git 사이트 ( https://git-scm.com/download/win ) 에서 자신에게 맞는 운영체제에 맞게 선택하여 Git프로그램을 설치해 줍니다.


설치 완료시 윈도우 검색 도구를 통해 Git Bash  라는 프로그램을 실행 합니다.


실행 후 아래 사진과 같이 git 이라는 명령어을 통해 git이 제대로 작동하는지 확인합니다. 

$ git



pwd 라는 명령어를 통해 현제 디렉토리 위치를 확인 할 수 있습니다.

$ pwd

/c/Users/user


cd 라는 명령어를 통해 원하는 디렉토리로 들어갈 수 있습니다.


$ cd Documents/ 


~/Documents

$ pwd

/c/Users/user/Documents


mkdir 라는 명령어를 통해 디렉토리 생성을 할 수 있습니다.

$ mkdir gitProject


ls 라는 명령어를 통해 현제 디렉토리에 존재하는 폴더 및 파일을 알려줍니다.


확인해 보시면 GitProject/ 라는 이름이 확인 되는 것을 보실 수 있습니다.


$ cd Gitproject

위 명령어를 통해 해당 디렉토리에 들어가 신 후 깃을 생성 하도록 하겠습니다.


git init 라는 명령어를 통해 git을 생성 합니다.

$ git init

Initialized empty Git repository in C:/Users/user/Documents/GitProject/.git/


여기까지 잘 따라 오셨다면 폴더 탐색기를 통해 아래 그림 같이 .git이 생성된 모습을 확인 하실 수 있습니다.



.git 은 앞으로 우리가 관리하게될 버전관리 정보들을 가지고 있으며 절대 삭제 해서는 안되는 파일 입니다.




참고 자료 

지옥에서 온 Git - 생활 코딩

URL - https://opentutorials.org/course/2708/15170

Posted by JakeGD
|

GIT 이란?


Git 은 Versoin Control System ( 버전 관리 시스템 ) 의 제품 중 하나 이며 이 외로 CVS, SVN 등이 있습니다.


우리가 지금까지 해 왔던 백업 파일들 


File

File_최종

File_진짜_최종


이런식으로 현 파일을 실수로 날렸거나 터졌을때 다시 쉽게 전으로 돌아가기 위해 백업 파일을 만들어 사용해왔습니다.


이러한 방식 또한 버전관리라고 할 수 있습니다.


하지만 늘어나는 용량과 지저분한 이름들의 단점을 없애고 편히 관리 하기 위해 등장한것이 버전관리 프로그램중 하나인 GIT 입니다.




참고 자료 

지옥에서 온 Git - 생활 코딩

URL - https://opentutorials.org/course/2708

Posted by JakeGD
|