git - CLI를 통한 버전관리(2) : 버전관리 C.R.U.D(C)

Seoung Young Oh·2023년 2월 20일
0

git

목록 보기
3/6

Status

git작업 상태는 다음과 같은 구조로 되어있다.

Working Tree : 작업된 파일, 버전으로 만들어지기 전 단계.
Staging Area : 버전으로 만들 대상파일을 올려놓는 곳.
Repository : Staging Area에 올려있던 파일을 버전으로 저장하는 곳.

Create

먼저 테스트 파일을 생성한다.

  • git status : 이 명령어는 Working Tree의 작업 상태를 확인.

이제 git status명령어를 입력하여, 상태를 확인해보자.

  • git add filename : Working tree에 있는 filenameStaging Area에 올린다.

Working Tree에 있는hello1.txt파일이 보이고, 해당 파일이 Untracked files라고 표기 된것을 볼 수 있다. Untracked files은 직역하면 추적되지 않은 파일이라는 뜻으로, 버전관리 대상이 아닌 파일이라는 뜻이다.
해당 파일을 버전관리 대상으로 전환하기 위해서는 파일이 생성되고 한 번은 Staging Area에 올려져야 한다. git add hello1.txt를 입력하고 다시 상태를 확인 한다.

해당 파일이 new file로 인식된것을 볼 수 있다. Staging Area에 파일이 올라가고 이제 버전관리대상 파일로 지정된 것이다.

이제 버전을 만들보자.

  • git commit : Staging Area에 있는 파일을 버전으로 만든다(Repository에 저장). 뒤에 옵션이 없을 경우 commit editor가 뜬다. 옵션 -m을 추가하면 에디터 없이 commit messege를 바로 입력 할 수 있다.

  • git log : Repositorycommit된 버전들을 확인.

    • 옵션으로 --stat를 주게되면 연관된 파일들과 commit사항을 좀더 자세히 알아 볼 수 있다.
    • 옵션 -p를 주면 각 버전과 파일들의 내부 변경 내용을 볼 수 있다.

다시한번 Working Tree를 확인해보면

위와 같이 확인 할 수 있다. 수정된 파일이 없다는 의미로 관리할 변경사항이 없다는 의미다.

파일을 수정하여 변화를 살펴보자.

파일의 내용을 수정하고.

Working Tree를 확인해보면,

파일이 수정된것을 인식하는 것을 볼 수 있다.
나머지는 위와 동일한 방법으로 진행하면 된다.

git add - > git commit

로그에 새로운 버전이 올라가 있는것을 확인 할 수 있다.

여러개의 파일을 버전으로 묶어서 관리하고 싶다면?

먼저 hello1.txt파일을 수정하고, hello2.txt파일을 생성한뒤, Working Tree를 보면 다음과 같다.

여기서, 새로 생성된 hello2.txtUntracked상태로 Staging Area로 올려줘야 한다.

두개 파일을 모두 Staging Area로 올려주자. git add뒤에 .을 붙여 주면,
모든 파일을 올려줄 수 있다. commit하고 로그를 확인해보자.

두개의 파일이 하나의 버전으로 묶여있는 것을 확인 할 수 있다.

추가

git commit -am "Message"명령어로 addcommit을 동시에 할 수도 있다.
하지만 새로 추가되어 Untracked상태인 파일은 먼저 git add로 추가해준뒤에 실행해야 오류가 나지 않는다.

commit할 때 뜨는 기본 에디터는 다음과 같이 변경할수 잇다.
git config --global core.editor "Editor Name" 주로 nano를 사용하므로 git config --global core.editor "nano"로 입력하면 기본 에디터가 nano로 설정된다.

출처

https://opentutorials.org/course/301
https://stackoverflow.com/

0개의 댓글