Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
ignore.md
8 changes: 8 additions & 0 deletions .idea/.gitignore

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

9 changes: 9 additions & 0 deletions .idea/Git_Workbook.iml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions .idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 8 additions & 0 deletions .idea/modules.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions .idea/vcs.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

15 changes: 15 additions & 0 deletions week1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Week 1 학습 내용
- 저장소 clone
`git clone [저장소 URL]`

- 전체 추가
- `git add .`

- commit 메시지 작성
- `git commit -m "[커밋메시지]"`

- git 상태 확인
- `git status`

- push
- `git push [저장소명] [브랜치명]`
2 changes: 2 additions & 0 deletions week10/ff-merge.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
그렇다면 `A` 브랜치가 `B` 브랜치와 합쳐진다고 생각했을 때 현재 `A` 브랜치가 가리키는 커밋을 `B` 브랜치에서 내용이 추가된 커밋으로 설정하면 되겠죠?
이렇게 진행할 경우 A 브랜치에서 내용 추가라는 변경사항을 새로 생성하지 않고도 참조 값을 변경해 두 브랜치의 변경 사항을 하나로 합칠 수 있습니다.
위와 같이 실제 변경사항을 합치기보다는 `HEAD`를 옮기는 방법을 **fast-forward merge**라고 합니다.

Git에서는 기준이 되는 브랜치에 신규 커밋이 존재하지 않고 다른 브랜치에만 새로운 커밋이 존재할 때 자동으로 fast-forward merge를 실행합니다.
4 changes: 2 additions & 2 deletions week10/pull-practice.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
git pull은 fetch와 merge를 결합한 명령어입니다.
물론 fetch를 이용해 원격 레포지토리의 변경사항을 가져오고 merge하는 방식은 안전하다는 장점이 있지만 사실 좀 귀찮다는 단점이 있습니다.
원격 브랜치의 내용을 받아와서 자동으로 현재 브랜치에 반영하고자 할 때 위와 같이 `pull` 명령어를 사용합니다.
작업하고 있는 브랜치에 최신 변경사항을 반영하고자 할 때 유용하게 쓰일 수 있어요.
다만 pull의 경우 자동으로 fetch와 merge 를 동시에 수행하기 때문에 충돌이 발생할 수도 있습니다. 이 경우 당황하지 마시고 위에서 배웠던 것처럼 침착하게 충돌을 해결하신 후 커밋하신 뒤 한번 더 pull 명령어를 입력해주세요!
4 changes: 2 additions & 2 deletions week10/threeway-merge.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
3-way merge는 서로 다른 두 브랜치에서 두 브랜치 모두 다른 변경사항이 생기는 경우 사용되는 merge 방식입니다.
base가 되는 커밋을 기준으로 각 브랜치의 변경 내용을 비교하여 병합합니다.
서로 다른 두 변경사항이 합쳐지는 경우에는 반드시 두 변경사항을 병합하는 새로운 변경점을 생성하게 됩니다.
이 방식은 충돌이 발생할 가능성이 있고 충돌이 발생하면 수동으로 해결해야 해요.

Git의 merge 알고리즘은 base 커밋, HEAD, merge 하는 대상 브랜치의 변경 내용을 기반으로 동작합니다.
Git의 merge는 base 커밋, HEAD, merge 하는 대상 브랜치의 변경 내용을 기반으로 동작합니다.