Skip to content

Commit

Permalink
2022-03-07
Browse files Browse the repository at this point in the history
  • Loading branch information
chisanahn committed Mar 7, 2022
1 parent b8e6be2 commit 9332146
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 11 deletions.
16 changes: 8 additions & 8 deletions Etc/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,17 @@

## SOLID 5원칙

객체 지향 설계뿐만 아니라 애자일 개발에서도 핵심 철학을 형성한다
객체 지향 설계뿐만 아니라 애자일 개발에서도 핵심 철학을 형성한다

* ### Single-responsibility principle

하나의 클래스가 하나의 책임만을 가져야 한다.
하나의 클래스가 하나의 책임만을 가져야 한다.

* ### Open-closed principle

모든 클래스는 확장에는 열려있되, 수정에는 닫혀있어야 한다.

다시말해 객체는 소스코드의 변화없이 확장이 가능해야 한다.
다시말해 객체는 소스코드의 변화없이 확장이 가능해야 한다.

* ### Listov substitution principle

Expand All @@ -22,13 +22,13 @@

인터페이스는 client의 요구사항에 맞게 최대한 세세하게 나눠져있는것이 좋다.

객체지향 뿐만 아니라 분산시스템이나 마이크로서비스에서도 핵심적인 원칙이다.
객체지향 뿐만 아니라 분산시스템이나 마이크로서비스에서도 핵심적인 원칙이다.

* ### Dependency inversion principle

구현체에 의존해서는 안된다. 인터페이스 등 추상적인 개념에 의존해야 한다.

특히 high-level 모듈은 low-level 모듈을 import해서는 안된다.
특히 high-level 모듈은 low-level 모듈을 import해서는 안된다.

객체간의 결합도를 낮추기 위한 원칙이다.

Expand All @@ -51,7 +51,7 @@
>
> https://regexone.com/problem/matching_decimal_numbers
<br>
<br><br>

# md 문법

Expand Down Expand Up @@ -80,7 +80,7 @@ html `<details>`, `<summary>` 태그 이용해서 접기/펼치기 버튼 만들
- [x] item1
- [ ] item2

<br/>
<br/><br>

# window에서 z-shell 설치

Expand All @@ -104,7 +104,7 @@ solarize dark theme도 적용하고 싶어서 찾아보던중 Windows New Termin
z shell로 변경하고 나니 git log 등의 명령어를 수행할때 다른 창으로 이동한뒤 q로 닫고 나면 내용이 보이지 않아서 불편했다.
git core.pager가 기본적으로 less로 설정되어 있는데 bash랑 달리 zsh를 사용하게 되면 pager로 열리게 된다. 따라서 설정을 조금 수정해주면 된다. https://serebrov.github.io/html/2014-01-04-git-log-and-less-keep-output.html

<br>
<br><br>

# 라이선스

Expand Down
20 changes: 17 additions & 3 deletions Git/README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,19 @@
# Git

## squash merge시 주의할 점

알고리즘 스터디 할때 사용하는 리포지토리에서 README 수정이라서 간과했던 부분인데

일단 기본적으로 작업할때 따로 브랜치를 만들어서 작업하고 main 브랜치에 머지하는게 좋고

만약 `origin`의 main 브랜치에서 `upstream` main 브랜치에 PR을 날릴 경우 squash 머지를 사용하면 커밋 내역이 충돌날 수 있기 때문에 주의해야 한다.

> 그때 당시에는 커밋 내역을 깔끔하게 할 수 있을 것 같아서 squash 머지를 사용했는데 충돌나는건 미처 생각하지 못했다.
우선 지금은 아직 소스코드가 그런게 올라와있지 않은 상태라서 origin을 upstream 저장소로 덮어씌우는게 좋을 것 같다.

<br>

## git filter-branch

필터에 적용된 파일만 가지고 히스토리를 다시 구축할 수 있다.
Expand Down Expand Up @@ -92,15 +106,15 @@ $ git branch (-m | -M) [<oldbranch>] <newbranch>

이 옵션을 한번 사용해서 push를 하고 나면 해당 branch의 `upstream branch``branch.<name>.merge`에 추가된다.

한번 추가된 뒤로는 해당 브랜치에서 git push / git pull 등의 명령어를 인자없이 사용하면 `-u` 옵션을 주고 사용했던 `upstream branch`가 기본값으로 적용된다.
한번 추가된 뒤로는 해당 브랜치에서 git push / git pull 등의 명령어를 인자없이 사용하면 `-u` 옵션을 주고 사용했던 `upstream branch`가 기본값으로 적용된다.

> **참고자료**
>
> Git - git-push Documentation. Git-scm.com. Published 2022. Accessed January 30, 2022. https://git-scm.com/docs/git-push#Documentation/git-push.txt--u
<br>

## 브랜치 컨벤션
## 브랜치 컨벤션

GitHub의 경우 merge commit의 기본메시지가 `Merge pull request #[PR번호] from 리포지토리명/브랜치명`이라서 브랜치에 이슈번호를 명시해두면 merge commit이 issue에 연결된다.

Expand All @@ -124,7 +138,7 @@ dir/**
!dir/exception.txt
```

### 이미 git에 추가되어있는 파일이나 디렉토리
### 이미 git에 추가되어있는 파일이나 디렉토리

이미 git에 추가되어있는 파일이나 디렉토리의 경우 .gitignore에 명시한다고 제거되지 않으므로 우선 commit tree에서 제거해줘야 한다.

Expand Down

0 comments on commit 9332146

Please sign in to comment.