목록전체 (303)
처음부터 차근차근
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/Y3QpA/btrgqGNkR4P/u9cnLVZ8cHajtkxSWYpxek/img.png)
1. gistory를 실행한 디렉토리에서 내용을 변경하고 git add를 하면 .git의 object파일과 index 파일이 변경된다. index 파일에는 파일의 이름이 들어있고, objects 파일에는 파일의 내용이 들어있다. 이미지에서 볼 수 있듯이 index안의 파일 이름은 objects 파일의 역슬래쉬 뺀 이름이다. 2. git은 파일의 이름이 달라도 파일의 내용이 같으면 같은 오브젝트 파일을 가리킨다. 이러한 git의 내부 메커니즘으로 인해 다른 사람이 file내용을 aaa라고 했을 때와 내가 aaa라고 했을 때 두 가지 경우 모두 같은 파일을 가리킨다. 예 first.txt 파일을 복사해서 third.txt 파일을 만들고(cp first.txt third.txt) git add third.tx..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bM2cYc/btrgh29QVxO/cAslLgbicnSsHfQzhkUDlk/img.png)
gistory gistory는 git의 원리를 공부하고 분석할 때 사용하는 도구이다. 파이썬을 깔면있는 프로그램으로, git 파일의 어떤 부분이 새로 만들어지고 동작되었는지 알 수 있다. 1. 먼저 파이썬을 설치한다. 2. 다 설치되었으면 python 환경변수 설정을 한다. (1) 제어판 > 시스템 보안 > 시스템 > 고급 시스템 설정을 클릭 (2) 환경변수 클릭 (3) Path 클릭 하고 편집 클릭 (4) 새로만들기 클릭 후 아래내용 추가하고 확인! C:\Users\사용자계정\AppData\Local\Programs\Python\Python39\Scripts\ C:\Users\사용자계정\AppData\Local\Programs\Python\Python39\ 3. cmd창을 키고 아래 명령을 친다(Win..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cHAKzp/btrf0ra5TYL/FNvtQNjY9jfCidUUdKlsj1/img.png)
branch를 merge하는 방법 branch를 merge하는 데는 두가지 방법이 있다. - Fast-Forward - (Fast-Forward가 아닌 것) recursive strategy 방식 Fast-Forward Fast-Forward란 master branch에서 다른 branch로 분기했을 때, master에서는 변화가 없는데(commit을 하지 않음), 다른 branch에서 변화가 생기고(commit함) 다시 master branch로 merge하려 했을 때 사용하는 merge 방법이다. merge했다는 commit을 하지 않고, merge하려했던 branch가 가리키는 곳을 master branch가 가리키고 merge를 끝낸다. Fast-Forward를 직역하면 '빨리감기'이다. 직역한 ..
guard문 guard 조건식 else { 조건 거짓일 때 실행될 코드 break or return or continue or throw } 조건 참일 때 실행될 코드 Swift 2부터 도입된 구문으로서 조건식이 거짓일 때 실행되는 문법이다. else문 안에는 반드시 break, return, continue, throw 중 하나를 써줘야 한다. 사용 이유 : 위의 키워드를 반드시 사용해야하는 것에서 알 수 있듯이 함수나 반복문에서 빠져나가기 위함(조기 출구=early exit)이다. 활용의 대표적인 예 : guard let (옵션널 바인딩) func test(num: Int) { guard let number = num else { print("num에 nil이 들어감") return } print(n..
var num = 2 if num > 1 { print("num은 1보다 큽니다") } //결과 : num은 1보다 큽니다 var num = 2 if num > 1, num 1 && num < 3 { print("num은 1보다 크고 3보다 작다") } //결과 : num은 1보다 크고 3보다 작다 //num은 1보다 크고 3보다 작다 var num = 3 if num == 2 { print("num은 2입니다") } else { print("num은 2가 아닙니다") } //결과 : num은 2가 아닙니다 var num = 3 if num == 2 { print("num은 2입니다") } else if num ==..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/v7VHI/btrfIYOxWqm/0kc112J6KkYKBplKE3cc0k/img.png)
LF will be replaced by CRLF in '파일명' = LF는 '파일명'에서 CRLF로 대체됩니다. (Linux는 CRLF will be replaced by LF in '파일명' 나옴) git add를 했더니 나오는 경고이다. 이런 경고가 뜨는 이유는 OS마다 줄바꿈이 다르기 때문이다. LF(Line-Feed) : 커서는 그대로 두고 바로 아랫줄로 이동. - Linux, Mac CR(Carriage Return) : 커서만 맨앞으로 옮김. - Mac초기모델 CRLF(Line-Feed + Carriage-Return) : 바로 아랫줄로 이동하고, 커서를 맨 앞으로 옮김. - Window, DOS git에서 어떤 줄바꿈 방법을 채택해야 하는지 혼란이 온 것이다. 이것을 해결하려면 git co..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cNeIh6/btrfG3vLtl0/9gCAsKiIgaVss9SeKDR57k/img.png)
branch란 git에는 현재 작업하고 있는 곳에서 분기하여 다른 작업을 할 수 있는 기능이 있다. 이 기능을 branch라고 한다. branch를 번역하면 나뭇가지이다. branch를 만드는 것은 나뭇가지를 하나 생성하는 것이고, 그 나뭇가지가 옆으로 뻗어나간다고 생각하면 편하다. branch를 사용하면 현재 작업에서 무언가를 추가하거나 뺀 버전을 만들고, 필요없다 싶으면 다시 돌아올 수 있다. 또, 만들다가 원래 작업에다 합치고 싶으면 다시 합칠 수 도 있다. 이러한 branch기능을 사용하면 쉽고 빠르게 여러 버전을 만들 수 있어서 참 편리하다. 현재 branch 보기 git branch branch 만들기 git branch 브랜치명 + branch 만들면서 checkout까지 같이 하기 git ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/2FNWt/btrfQE8yy65/LAby7DJYcXojqa9tqqt2W0/img.png)
CGLIB is required to process @Configuration classes. Either add CGLIB to the classpath or remove the following @Configuration bean definitions: 원인은 CGLIB dependency를 추가해주지 않았기 때문이다. 해결 : pom.xml에 CGLIB dependency를 추가한다. (pom.xml에 아래의 코드를 추가한다.) cglib cglib 2.2.2