반응형

 

자바코드와 database 테이블 칼럼 매핑

 

applicationProperty에 해당 기능을 추가했을 경우

mybatis.configuration.map-underscore-to-camel-case=true

 

자바는 camelCase, Mybatis 연동 databse는 snake_case

일 때 정상적으로 가져온다.

 

자바가 snake_case로 선언되어있지 않은가 확인해본다.

 

자바 코드 변경이 불가능한 경우 Mapper sql문에서 snake_case를 camelCase로 변경해줄 수 있다.

ex) @Select("select user_id as userId from User");

 


JPA 에서 Unable to find user id / id 2번을 못찾는다는 오류가 있었는데, 

data.sql 에 user id 2번이 분명히 존재했다.

data.sql을 다른 곳을 수정하니 정상 동작함

 

반응형

' > 오류 모음' 카테고리의 다른 글

[H2] 오류  (0) 2022.05.05
[Spring boot] 오류 모음  (0) 2022.05.02
반응형

[학습일지] Java & SpringBoot로 시작하는 웹 프로그래밍 : 자바 인강 8주차


 

8주차 학습 내용

REST API

HTTP PROTOCOL

SPRING BOOT

 

 


REST API

 

REST: 자원의 상태 전달

1. URI를 이용해서 자원을 식별해야함
2. 데이터를 전달할 수 있다 주로 json, html
3. http 프로토콜을 통해 데이터의 처리방식을 포함 - GET, POST, PUT, DELETE

4. 응답 데이터뿐만 아니라 추가적인 URI 정보를 제공할 수 있다.

 



URI - 자원을 나타내는 주소 값
URL - 자원의 위치를 식별하는 주소

 


 

설계규칙
계층관계는 / 를 사용한다.
하이픈은 가독성을 높이는데 이용한다.
소문자를 사용한다

복수형을 사용한다.
파일확장자를 명시하지 않는다.
세션을 명시하지 않는다.

 


HTTP PROTOCOL

 

컴퓨터에서 다루는 대부분의 데이터는 전송할 수 있다.

클라이언트가 서버에게 request , 서버의 response를 클라이언트가 받는 방식으로 작동한다.

 

HTTP METHOD
get - 자원 취득
post - 자원 생성, 수정
put - 자원 수정
delete - 자원 삭제

 


응답상태코드
1.. 처리중

2.. 성공

3.. 리다이렉트

4.. 클라이언트 에러

5.. 서버 에러

 


SPRING BOOT


 SPRING BOOT의 가장 큰 장점은 사전 구성이 거의 필요 없다.
기존에 사전 구성을 하기 위해 xml 설정이 과도하게 필요했는데 현재는 xml 요구사항이 전혀 없다.
또한 WAS를 내장하고 있기 때문에 별도의 설치가 필요 없다.

 

REST API를 활용하여 Get method를 이용하여 URI 정보를 받는 여러가지 방식


RequstMapping에 주소를 명시한다.
GetMapping에 세부 주소를 명시한다.

 

요청 정보 받기
PathVariable 은 주소에 { } 를 사용한다.
RequestParam 은 ?name=값 처럼 이용한다.
또한 DTO를 사용할 수도 있다.

 


 

REST API를 활용하여 Post method를 이용하여 정보를 받는 여러가지 방식

RequestBody 데이터를 HTTP body에 넣어서 전송
      DTO 를 body 에 전송할 땐 해당 어노테이션 사용

객체는 카멜케이스, json은 스네이크케이스이므로
칼럼에 JsonProperty
객체에 JosnNaming
body에 전달되어 오는 json을 객체에 매핑
객체를 json으로 변환시키고 return 시킬 수 있음

 



Put
PathVariable 수정할 자원을 명시

전달받기 위해 RequestBody를 활용할 수 있다.

 



Delete
PathVariable 삭제할 자원을 명시

역시 전달받기 위해 RequestBody를 활용할 수 있다.


json -> object 할때는 objectMapper사용하면 편리하다.

 


 

반응형
반응형

 

h2를 사용하다가 오류가 전혀 없어 보이는데 문법 오류가 났다.

 

h2에서는 mysql 문법을 지원하지 않아서 나는 오류다.

 


 

 

첫 연결시에 JDBC URL 마지막에 ;mode=mysql를 입력해주면 mysql 문법을 사용할 수 있다.

 

 


 

 

data.sql 을 spring boot 2.5부터 사용할 때 추가해줘야한다.

 

defer-datasource-initialization: true  # data.sql 사용할 때 spring boot 2.5부터 추가
반응형

' > 오류 모음' 카테고리의 다른 글

[DataBase] 오류  (0) 2022.06.29
[Spring boot] 오류 모음  (0) 2022.05.02
반응형

[학습일지] Java & SpringBoot로 시작하는 웹 프로그래밍 : 자바 인강 7주차


 

7주차 학습내용

 

객체지향

디자인 패턴

 


객체지향

 

현실에 존재하는 물체를 모델링하기 위한 방법론이다.

절차 지향적인 프로그래밍 방법을 객체지향적인 프로그래밍 방법으로 발전시켰다.

 

물체를 객체로 정의하기 위해 해당 객체가 가지고 있는 특성을 분석하여

속성(변수)과 기능(메서드)으로 분리하여 모델링한다.

객체는 실체화된 개념일 수 있고, 추상적인 개념일 수도 있다.

 

상태 유지(속성)

객체는 해당 상태를 저장할 수 있어야 하고 그 상태를 유지해야 한다.

기능 제공(메서드)

객체는 다른 객체와 협력하기 위해 기능을 제공해야 한다.

고유 식별자

객체는 고유한 값을 갖고, 다른 객체와 식별될 수 있어야 한다.

 


 

객체지향의 4대 특성

 

캡슐화

객체의 상태인 속성은 기능을 통해 변경되어야 한다.

무의미한 값을 저장하지 않도록 무결성을 유지할 수 있다.

상속

객체를 구조화할 수 있다. 유지보수가 향상된다.

추상화

객체 간의 특성을 추출하여 추상화시킬 수 있다.

다형성

하나의 인스턴스가 여러 형태로 변화할 수 있다.

코드의 재사용성이 향상된다.

 


 

객체지향 설계의 5원칙(SOLID)

 

객체 간의 의존성은 낮추고, 책임지고 있는 기능에 집중해야 한다.

결합도는 낮추고, 응집도는 높인다.

 

단일 책임 원칙

하나의 객체가 여러 기능을 부담하지 않고, 객체가 하나의 기능에 집중하도록 분리해야 한다.

 

개방 폐쇄 원칙

변경되어야 하는 부분은 폐쇄적이어야 하고, 확장에는 개방되어야 한다.

인터페이스를 사용하면 손쉬운 확장이 가능하고, 클라이언트 코드의 변경도 없다.

 

리스 코프 치환 원칙

부모의 인스턴스가 사용되던 자리에 자식의 인스턴스가 사용된다면

기존의 부모 인스턴스가 갖고 있던 규칙을 자식이 위반하면 안된다. (오버라이딩시 위배가능성)

 

인터페이스 분리 원칙

인터페이스의 기능들을 하나의 인터페이스에 통합하지말고

인터페이스를 분리해서 구현체가 필요한 메서드를 가진 인터페이스만을 구현받도록 분리해야 한다.

 

의존 역전 원칙

의존 객체를 구체적인 구현체가 아닌 상위 추상적인 개념을 의존하게끔 설계해야한다.

 

 


디자인 패턴

 

싱글톤

 

 

생성자를 private로 만들어서 생성할 수 없게 한다.

싱글톤 패턴은 자기 자신을 속성으로 갖고 있다. getInstance 메서드를 통해 자기 자신인 속성을 가져온다.

getInstance가 static이므로 getInstance에서 이용해야 하는 자기 자신인 속성도 static으로 선언된다.

 


 

어댑터

 

 

관련이 없는 두 인터페이스를 중간에서 어댑터가 바꿔치기하여 연결시켜주는 디자인 패턴이다.

기존 인터페이스가 A이고, A 인터페이스를 사용하는 위주로 클라이언트 코드가 작성되었다고 할 때

B 인터페이스 새로 사용해야 한다면 B 인터페이스를 A 인터페이스로 중간에서 교체하는 어댑터를 만들어 줄 수 있다.

 

어댑터는 A 인터페이스를 구현하고, B 인터페이스를 속성으로 받아

A 인터페이스들의 메서드를 호출하면, A메서드를 오버라이딩해서 B 인터페이스 메서드를 대신해서 호출시켜주면 된다.

 


 

프록시

 

 

스프링 프레임워크에서 AOP로 프록시 패턴을 사용한다.

프록시가 인터페이스인 GameInterface를 구현하고, 실제 구현체인 GameService를 속성으로 갖는다.

 

클라이언트 코드에서 직접 GameService를 사용하지 않고 Proxy를 통해 사용한다.

Proxy는 GameService의 메서드를 호출을 하는데, 이때 앞과 뒤로 추가적인 작업이 가능해진다.

 


 

데코레이터

 

상속관계를 통해 super키워드를 이용하여 부모의 메서드를 호출하여

실행 결과를 반환받는 디자인 패턴이다.

 

호출은 (자식 -> 부모) 순으로 호출되며

실행은 (부모 -> 자식)으로 나오게 된다.

 

 


 

옵저버

 

 

변화가 일어날 때 등록해둔 옵저버(인스턴스)들에게 모두 알려주는 것이다.

옵저버를 등록시키고, 특정 함수가 동작할 때 옵저버의 기능이 동작하도록 한다.

 


 

파사드

 

클라이언트 코드가 복잡한 (여러 클래스)들의 기능을 일련의 과정으로 사용할 때

(클라이언트 코드)와 (여러 클래스) 사이에 (파사드 객체)를 두어

파사드 객체가 각 클래스들이 복잡하게 호출되는 일련의 과정을 메서드로 제공한다.

 

클라이언트 코드는 파사드 객체가 제공하는 간단한 메서드를 사용하게 하는 방식이다.

 


 

전략

 

가장 보편적으로 사용되는 패턴으로 

클라이언트 코드단에서 인터페이스를 구현한 구현체 부분을 전략으로 선택하여

선택한 전략 구현체를 사용하는 방법이다.

 

생성자를 인수를 인터페이스로 지정하여 내부 동작들은 인터페이스의 메서드를 사용하여구현체인 인스턴스의 메서드로 동작시키는 것

 

 


 

반응형
반응형

오류 모음

 

Caused by: java.sql.SQLException: Incorrect string value: ...
원인: 한글깨짐
CONFIG FILE characterEncoding=UTF-8 // database UTF-8

 

class file for jakarta.persistence.EntityManager not found
원인: implementation 'org.springframework.boot:spring-boot-starter-data-jpa:2.6.7를 해놓고
hibernate를 따로 implementation하여 생긴 오류

 

Value too long for column "WRITER CHARACTER VARYING(20)":
원인 1 : database varchar(길이) 보다 입력길이가 길어서 나는 오류
varchar길이를 늘린다.

원인 2 : 인코딩 설정이 잘못되서 문자를 길게 받아들이는 오류
application.property
server.servlet.encoding.charset=utf-8
server.servlet.encoding.force=true
추가

 

Neither BindingResult nor plain target object for bean name 'command' available as request attribute
원인: jsp form 태그 안에서 전달받은 model.addAttribute 를 못알아내고 기본 값인 command로 인식
contoller에서 model.addAttribute("name",new dto()) 라고 했다면 jsp form 태그 시작에 modelAttribute="name"를 지정해줘야한다

controller ### model.addAttribute("name", new dto());
jsp ### <form:form method="POST" action="/update" modelAttribute="name">

 

redirect에 path variable 추가시 한글이 깨지는 문제
https://ivvve.github.io/2019/01/20/java/Spring/redirect_URL_encoding/

 

 

 

 


 

반응형

' > 오류 모음' 카테고리의 다른 글

[DataBase] 오류  (0) 2022.06.29
[H2] 오류  (0) 2022.05.05
반응형

[학습일지] Java & SpringBoot로 시작하는 웹 프로그래밍 : 자바 인강 6주차


6주차 학습내용

 

자료구조

 

제네릭

 

컬렉션과 맵

 


자료구조

 

 

데이터를 효과적으로 저장하고 사용하기 위한 여러 가지 방법이 있다.

이러한 방법들을 정리한 것이 자료구조이며 데이터의 사용 방식에 따라 정의된다.

 

배열: 메모리 공간에 연속적으로 배치하여 관리한다. 물리적, 논리적 위치가 같으므로 접근이 빠르다.

연속적인 배치 구조로 내부가 변경된다면 요소들을 재배치하는 과정이 필요하므로 내부가 변경된다면 비효율적이다.

연결 리스트: 자료들을 연결된 형태로 배치한 것이다. 한쪽의 자료가 다른 쪽의 참조 위치를 알고 있다. 양쪽을 연결할 수도 있다.

배열과는 다르게 내부가 변경되어도 좌우 참조값을 변경해주면 되기 때문에 변경에 유리하다.

 

스택: FILO 구조로 쌓듯이 저장하는 자료구조이다.

: FIFO 구조로 먼저 들어간 자료가 먼저 나오는 구조이다.

 

트리: 부모와 자식으로 이루어진 자료구조이다. 보통 이진트리로 사용한다.

이진 검색 트리: 부모 노드보다 작다면 왼쪽 자식으로, 부모 노드보다 크다면 오른쪽 자식으로 배치하여 검색에 효과적인 자료구조이다.

 

그래프: 정점과 간선의 형태로 이루어진 자료구조이다. 간선의 방향이 있다면, 방향 그래프이다.

 

해싱: 검색을 효과적으로 하기 위한 자료구조이다. 기본적으로 배열과 같은 논리로, key의 해시 함수 결과로 bucket에 저장된

value를 알 수 있으므로 시간 복잡도를 줄일 수 있다.

 

 


제네릭

 

 

제네릭: 클래스 내부에서 사용하는 자료형을 미리 정의해두지 않고, 자료형의 변경에 유리하도록 하는 기능

 

부모가 될 Animal 클래스

 

 

Animal의 구현체인 Dog

 

 

Animal의 구현체인 Cat

 

 

위에서 정의한 구현체를 클래스 내부 자료형으로 사용할 UseClass

(T extends Animal을 사용하면 Animal을 상속받은 클래스만 자료형으로 사용하도록 범위를 줄일 수 있다.)

 

 

최종적으로 제네릭을 사용한 Main 클래스

 

 

 


컬렉션과 맵

 

Collection - List, Set을 이용하도록 정의해둔 인터페이스

구현체 - ArrayList, LinkedList, HashSet, TreeSet..

 

List - 순서가 있고, 중복을 허용한다.

Set - 순서가 없고, 중복을 허용하지 않는다.

 


 

Map - Map을 이용할 수 있도록 정의해둔 인터페이스

구현체 - HashMap, TreeMap

 

Map - Key-Value 쌍으로 정의된 자료구조, Key는 중복을 허용하지 않는다.

 

 

 


 

반응형
반응형

[학습일지] Java & SpringBoot로 시작하는 웹 프로그래밍 : 자바 인강 5주차


 

5주차 강의 학습내용

 

interface
자바의 유용한 클래스
자료구조

 


interface

 

객체지향의 4가지 특징으로 가장 중요하다고 여겨지는 것은 다형성이다.

다형성을 더 효과적으로 사용하는 것을 목적으로 만들어진 것이 인터페이스이다.

 

기본적으로 인터페이스는 클래스가 아니며, 추상 메서드를 갖고 있다고 생각하면 된다.

전에 학습한 추상 클래스는 기본적인 클래스의 틀을 유지하면서 추가적으로 추상 메서드를 갖고 있다.

 

반면, 인터페이스는 추상 메서드만을 갖는다.

추상 메서드 외에 static 메서드나 default 메서드도 갖는 것이 가능하지만

추상 메서드가 가장 중요하다.

 

인터페이스를 구현하게 되면 클래스를 작성하기 이전에 미리 어떠한 함수를 구현해야 하는지 알 수 있으며

해당 인터페이스를 구현했다면 인터페이스에서 작성한 모든 추상 메서드를 구현한 것이 된다.

 

인터페이스를 구현한 클래스가 여러 종류라면 그중 원하는 인스턴스로 교체해주면 간단히 다형성을 사용할 수 있다.

인터페이스에서 구현할 메서드들을 추상 메서드로 미리 명시해줬기 때문에 함수의 반환 타입, 함수명, 매개변수는 같아진다.

이렇듯 인터페이스를 사용하면 다형성을 효과적으로 이용할 수 있기 때문에 사용부의 코드 변경이 굉장히 축소된다.

Property에 key value형태로 value만 바꿔주며 사용부의 코드 변경을 전혀 하지 않게 만들 수도 있다.

 

또한 자바에서 상속은 단일 상속으로 제한이 있기 때문에 직접적인 부모-자식 관계가 아닌

연관성이 적은 클래스들에서는 상속을 받기 어려울 수 있다.

하지만 인터페이스는 이러한 제한이 없기 때문에 연관이 없었던 클래스들의 공통 기능을 만들어 줄 수 있다.

 

 

 


자바의 유용한 클래스

 

Object

toString() : 객체의 참조변수를 참조값이 아닌 String을 반환하도록 재정의 할 수 있다.

equals() : 객체의 참조주소를 비교한다.

hashcode() : hash를 사용하는 Collection에서 문제가 없도록 equals와 같이 재정의 한다.

 

Class

 

 

로컬에 클래스가 없는 경우 해당 클래스의 멤버를 사용할 수 없다.

 

class 클래스는 컴파일된 class 파일 정보를 불러와 동적 로딩 시킨 후 사용할 수 있게끔 도와준다.

Reflection programming으로 활용할 수 있다.

 


자료구조

 

(Stack)

Stack = new Stack

(Queue)

Queue = new LinkedList

(Array)

ArrayList = new ArrayList

(Linked List)
LinkedList = new LinkedList

 

(Hash)
HashSet = new HashSet
HashMap = new HashMap

 

(Heap)

Queue = new PriorityQueue

(BinarySearch Tree)
TreeSet
TreeMap

 

 

 

 


 

반응형
반응형

[학습일지] Java & SpringBoot로 시작하는 웹 프로그래밍 : 자바 인강 4주차


 

Java & SpringBoot로 시작하는 웹 프로그래밍 강의는 전체 분량이 8주 분량이고 이번이 4주차로 절반이 지났다.

4주차에서는 3주차에 이어서 객체에 대해서 좀 더 깊게 다룬다.

 

 


상속

 

자바에서 모든 클래스는 Obejct class를 상속받는다.

상속은 extends 키워드로 단 하나의 클래스만 상속 가능하다.

 

클래스가 생성되는 순서는 부모 클래스 -> 자손 클래스이다.

그 이유는 super 키워드 때문인데, super 키워드는 생성자 제일 상단에 위치하여 부모 클래스의 생성자를 호출한다.

자손은 부모의 필드와 메서드를 상속받지만 생성자는 상속받지 않는다.

 

부모 클래스는 일반적인 개념이고

자손 클래스는 부모 클래스를 좀 더 구체화한 개념이다.

 

 

main에서 Child의 생성자를 이용해서 인스턴스를 생성하면

Child class 생성자에서 super()로 Parent class의 생성자를 호출하고

Parent class 생성자에서 super()로 Object class를 호출한다.

 

호출 순서: main -> Child -> Parent -> Object

생성 순서: Object -> Parent -> Child -> main

 

super() 키워드는 항상 생성자의 첫 줄에 위치하고 있어야 하며 이는 this()와 같다.

그러므로 한 생성자에서 super()와 this()를 같이 사용하는 것은 불가능하다.

 

 기본 생성자와 마찬가지로 명시하지 않았다면 super()를 컴파일러가 자동으로 추가한다.

상위 클래스에 기본 생성자가 없다면 super(변수)로 명시적으로 부모 생성자를 호출해줘야 한다.

 


 

부모 클래스에는 parentMethod가 있다.

자손 클래스에는 childMethod와 부모 메서드를 재정의한 parentMethod가 있다.

 

 

Child 인스턴스의 타입이 Child라면 부모 메서드와 자손 메서드를 전부 사용할 수 있다.

이때 부모 메서드를 자손 메서드가 오버 라이딩했다면 오버 라이딩된 자손 메서드를 사용한다.

 

형 변환하여 타입을 부모로 바꾸게 되면 자손 메서드를 사용할 수 없게 된다.

타입이 부모이므로 자손 필드와 메서드에 접근할 수 없게 된다.

 

단, 부모 메서드가 오버 라이딩되어있다면 오버 라이딩된 메서드를 사용한다.

오버라이딩된 메서드를 통해 자손의 필드와 메서드에 접근하여 사용할 수 있다.

 

 


추상 클래스

 

추상 클래스는 추상 메서드를 1개 이상 갖고 있는 클래스이다.

추상 메서드는 구현부가 없는 메서드이다.

 

추상 클래스는 인스턴스화 될 수 없고 자손 클래스가 상속하여 사용한다.

상속받은 자손 클래스는 추상 메서드를 모두 구현해야 한다.

 

 

 


 

 

 

 

반응형
반응형

[학습일지] Java & SpringBoot로 시작하는 웹 프로그래밍 : 자바 인강 3주차


Java & SpringBoot로 시작하는 웹 프로그래밍 : 자바 인강을 수강한 지 3주차가 되었다.

3주차에서 배운 내용은 객체의 기본적인 작성 내용을 배운다.

추가로 배열에 대해서 배우는데, 이러한 배열을 더 손쉽게 다룰 수 있도록 도와주는

JAVA API인 ArrayList에 대해 배웠다.

 


3주차

 

3주차에서 다루는 객체지향의 특징은 정보은닉과 캡슐화에 대한 내용이다.

정보은닉은 멤버 변수가 특정 범위나 특정 조건을 만족해야 할 때 외부에서 함부로 변수 값을 조정하지 못하도록 하는 것이다.

캡슐화는 클래스의 구현된 함수를 통해 객체간의 협력을 가능하도록 하여, 낮은 결합도를 유지할 수 있다.

 

객체를 정의할 때 정보은닉과 캡슐화에 유의하며 구현하게 되면

객체간의 협력을 할 때 오류를 최소한으로 낮추고 효율적으로 객체를 이용할 수 있다는 장점이 있다.

 

 

강의 내용을 토대로 하나의 객체를 작성했다.

 

클래스 멤버

해당 클래스는 글 번호, 글 제목, 글 내용의 정보를 갖는 클래스다.

인스턴스 변수는 외부에서 접근하지 못하도록 접근제어자를 private로 설정하였고,

생성자 오버 로딩을 통해 생성자는 2개로 구성했다.

 

생성자의 접근제어자는 default이므로 같은 패키지에서만 인스턴스를 생성할 수 있을 것이다.

글 번호마다 번호를 부여해야 하므로 클래스 변수를 하나 생성해두었고,

인스턴스가 만들어질 때마다 하나씩 증가하여 해당 인스턴스의 글 번호로 사용되게 하였다.

 

메서드

메서드의 종류는 총 4가지로 구성했다.

글 제목과 글 내용을 보여주는 showPost,

제목을 수정하는 modifyTile,

글 내용을 수정하는 modifyText,

생성된 글의 총개수를 보여주는 postCount를 만들어 두었다.

 

 

 

메인에서 만들어진 객체를 생성하여 각 기능을 사용하면 다음과 같다.

 

 


 

추가로 강의를 수강하기 이전에 강의 제목만 보고

학생들이 운송 수단을 타고 이동하는 객체 협력을 구현해봤는데,

매끄럽게 구현되지는 않았다.

 

객체 간의 협력은 Trans 클래스의 getMoney 함수를 통해 이루어진다.

학생이 Trans.getMoney()를 이용해서 각자가 내는 돈을 Trans 객체가 계속해서 모으며

학생은 Trans.paymoney 객체의 설정된 비용만큼 자신의 돈을 소모한다.

 

 

 

main함수에서 객체를 생성하고 출력 결과는 다음과 같다.

 

 

 


배열에 대한 사용 부분은 이전에 작성한 글이 있어서 따로 이곳에 작성하지 않았다.

https://komas.tistory.com/58

 

[JAVA] 자바 배열 array 사용법

[JAVA] 자바 배열 array 사용법 자바의 배열 기본적으로 배열이란 하나의 공통 타입을 갖는 여러 개의 변수들을 모아서 관리하기 위해 사용합니다. 여러 변수들을 라인마다 입력하는 것 보다는 사

komas.tistory.com

 


 

반응형
반응형

[Git] Sourcetree stash 스태시 사용법


 

브랜치1에서 작업도중 브랜치2로 급하게 이동하여 작업해야할때 

브랜치1의 작업내용을 커밋하지 않으면 브랜치2로 이동이 불가능하다.

현재 브랜치1에서의 작업 내용을 커밋하여 남기고 싶지 않을 때

임시 저장으로 stash를 이용하면 브랜치를 이동할 수 있다.

 


 

현재 newBranch에서 작업중이고, newBranch useless 파일을 임시저장 하고싶을 때

 

 

newBranch useless 파일을 stage에 올린 후 스태시를 클릭한다.

 

 

임시로 저장하게 되면 main 브랜치로 이동가능하다.

 

 


 

이동 후 작업을 마쳤다면 다시 작업하던 브랜치로 돌아와

스태시에 해당 임시 저장 내용을 눌러 다시 불러 사용하면 된다.

 

 

 


CLI 명령어

 

git stash

git stash pop

git stash list

git stash apply stash@{N}

반응형

' > Git' 카테고리의 다른 글

[Git] 기본 사용법 및 명령어  (0) 2022.07.26
[Git] Git rebase 재배치 사용법  (0) 2022.07.26
Github를 이용하여 웹 호스팅하기  (0) 2021.01.07
[Git] SourceTree, cli Git 커밋 되돌리기  (0) 2020.12.28

+ Recent posts