일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- TypeScript
- SSA
- EC2
- 중급파이썬
- pandas
- flask
- 카톡
- 파이썬
- NeXT
- crud
- docker
- S3
- wetube
- MongoDB
- dict
- lambda
- merge
- react
- RDS
- AWS
- Class
- 튜플
- socket io
- node
- Props
- Vue
- SAA
- 채팅
- async
- git
- Today
- Total
목록분류 전체보기 (420)
초보 개발자
지금까지 우리는 자신의 컴퓨터에서 작업한 뒤 그 컴퓨터 안에서 커밋을 저장 했다. 이 저장소를 지역 저장소(local repository)라고 부른다. 만약 실수로 지역 저장소를 삭제한다면 아주 곤란할 것이다. 작업 내용을 지역 저장소에만 저장하는 것은 안전하지 않기 때문에 작업하는 컴퓨터가 아닌 다른 곳에 저장 공간을 마련해야 합니다. 원격저장소란 깃에서는 지역 저장소와 원격 저장소(remote repository)를 연결하여 버전 관리하는 파일들을 쉽게 백업할 수 있다.원격 저장소는 지역 저장소가 아닌 컴퓨터나 서버에 만든 저장소를 말합니다. '백업'과 '협업'에 있어 원격 저장소는 중요한 역할을 합니다.원격 저장소 서비스를 제공하는 깃 허브에 직접 원격 저장소를 만들고 지역 저장소의 파일을 원격 저..
git reset 573ff3bb88d3d571257c341a5223445d65a80aa1 git init test cd test vim c1.txt git add c1.txt git commit -m 'c1' c1.txt에는 숫자 1을 입력해주자 git log를 실행해보자 HEAD->master에서 HEAD는 현재 작업트리가 어떤 버전을 기반으로 작업 중인지를 가리키는 포인터이다. 기본적으로 master브랜치를 가르키고 그 브랜치는 가장 최근의 커밋을 가리킨다. c1 커밋을 만들면 HEAD는 master를 가리키고 master는 c1커밋을 가리킨다. 이제 sub라는 브랜치를 만들겠다. git branch sub vim c2.txt // 2입력 git add . git commit -m 'c2' 여기서..
같은 문서의 다른 위치를 수정했을 때 병합하기 git init manual-3 cd manual-3 vim work.txt 이렇게 작성하고 저장하였다. git add . git commit -m 'work 1' git branch o2 work 1이라는 커밋을 만들었으므로 o2라는 새로운 브랜치를 만들었다. 이제 master브랜치와 o2브랜치에는 모두 work 1커밋이 있게 된다. 양쪽 브랜치에 있는 work.txt를 먼저 master브랜치에서 수정하겠다. 이렇게 수정 하고 master content 2 메시지로 커밋을 하겠다. 브랜치 이동 후 아래와 같이 수정을 해줄 것이다. git checkout o2 vim work.txt 이렇게 수정 하고 o2 content 2 메시지로 커밋을 하겠다. maste..
새 브런치 만들기 apple, google, ms라는 고객사가 있다고 가정하자 깃에서 브랜치를 만들거나 확인하는 명령어는 git branch이다. master는 특별한 브랜치이다. 기본적으로 만들어 지고 우리는 그동안 여기서 작업을 해왔던 것이다. git branch apple git branch apple브랜치가 잘 추가된 것을 확인할 수 있고, master 앞에 *표시는 아직 우리가 master브랜치에서 작업하고 있다는 뜻이다. git log 커밋 로그 화면도 다르게 나타나는 것을 확인 할 수 있을 것이다. (HEAD -> master, apple ) 이 표시는 저장소에 master, apple 2개의 브랜치가 있고 HEAD -> master이므로 현재 작업중인 브랜치는 master브랜치라는 의미 입..
브랜치란 ? 모든 버전 관리 시스템에는 '브랜치(branch)'라는 개념이 있다. 나뭇가지라는 뜻인데 개인적으로는 나뭇가지 보다는 시냇물이라고 하는게 더 어울릴 수도 있을 것 같다. 여러 갈래로 나뉘기도 하지만 또 합쳐지기도 하기 때문이다. 처음에 너무 막막했는데 이해하고 보니 꽤 재미있었다. 만약 내가 프로그램을 만들었다고 치고 그 프로그램을 여러 곳에서 사주었다. 그리고 추가로 여러 기능을 요구할 수 도있다. 이럴 경우에 나는 어떻게 할까? 각각의 디렉토리를 만들고 프로그램을 복붙할 것이다. 그리고 개별적으로 요구사항등을 추가해 나갈 것이다. 또 A사에서 요구했던 기능을 C사에서 요구 할 수도 있다. 이럴 경우 그 부분만 C사의 프로그램에 복붙하면 잘 될까?? 아마 C사의 프로그램도 이 전에 소스 코..
특정 커밋으로 되돌리기 - git reset 커밋 해시 깃에는 파일을 수정하고 커밋할 때마다 저장된 버전들이 쌓여있다. 앞에서 살펴본 git reset HEAD^ 명령으로 최신 커밋을 되돌릴 수도 있지만 특정 버전으로 되돌린 다음 그 이후 버전을 삭제할 수도 있다. git reset 명령을 연습해보기 위해 몇 개의 커밋을 만들어 보자 vim rev.txt a라고 적어 준 뒤 git add rev.txt git commit -m "R1" vim rev.txt 한번 더 수정하여 'b'를 추가하고 'R2'메시지와 함께 커밋해보자 git commit -am "R2" 같은 방법으로 rev.txt에 'c'를 추가한 후 'R3'메시지와 함께 커밋하고 ... 'R4'까지 4번의 커밋을 해주자 4개의 커밋이 있고 각 커..
작업 트리에서 수정한 파일 되돌리기 - git checkout 스테이지에 올렸던 파일을 내리거나 커밋을 취소하는 등 각 단계로 돌아가는 방법에 대해 알아보자 파일을 수정한 뒤 소스가 정상적으로 동작하지 않는 등의 이유로 수정한 내용을 취소하고 가장 최신버전 상태로 되돌려야 할 때가 있다. 이럴 때 일일이 수정한 소스를 찾아서 직접 되돌리면 참 번거러울 것이다. 이럴 때 checkout이라는 명령어를 사용하면 작업 트리에서 수정한 내용을 쉽게 취소할 수 있다. hello.txt를 열어 3rd line을 three로 변경해보겠다. git status를 해본다면 hello.txt는 커밋에 올라가 있기 때문에 tracked상태일 것이고, 수정이 되었기 때문에 changes not staged for commit..
커밋 내용 확인하기 -git log, git diff git log 명령어를 입력하면 지금까지 만든 버전이 화면에 나타나고 각 버전마다 설명도 함께 나타난다. commit이라는 항목 옆에 영문과 숫자로 된 긴 문자열이 있는데 이것을 커밋 해시,또는 깃 해시라고 한다. 커밋을 구별하는 아이디라고 생각하면 된다. 그리고 HEAD -> master이 것은 이 버전이 가장 최신이라는 표시이다. Author은 누가 만들었는지 Date에는 언제 만들어 졌는지가 나타나고 그 아래에는 작성자가 기록한 커밋 메시지가 나옵니다 만약 큰 규모의 프로그램을 짠다고 해보자 수만 줄 짜리 소스코드를 수정한 다음 저장소에 있는 최근 버전과 비교해서 어떤 부분이 다른지 찾아야 한다고 어떻게 할까?? 커밋메시지를 참고해도 구체적으로 ..