프로그래밍 23

[Github] 깃허브에 올린 파일 삭제하기

gitignore에 추가하지 않았던 파일을 뒤늦게 추가하고 싶어졌다. 그래서 gitignore에 추가하면, 더이상 git commit 대상은 아니지만 기존에 올려둔 파일은 깃허브 저장소에 존재한다. 이에 대하여 깃허브에서 파일 삭제하기# 원격저장소의 파일 삭제하기git rm --cached  이러면 깃허브 저장소에서 사라진다.cached 설정을 통하여 원격 저장소에서만 삭제하는 설정을 할 수 있다.(그냥 rm이면 원격저장소와 로컬저장소 모두 삭제됨) 이 후에 commit과 push를 통하여 깃허브 원격 저장소에 해당 사실을 반영한다. gitignore에 추가됐지만 계속적으로 추적되는 대상들 전체를 지우기도 가능하다# 캐시 삭제git rm -r --cached .# 디렉터리 내 모든 파일을 추가git ad..

[Github] 깃허브 충돌 - .idea 파일

깃허브에서 여러 브랜치를 파고 작업을 하다보니 .idea 파일 안에서 여러 오류가 발생했다. 그래서 .idea 파일을 삭제하고 다시 설치하면,또 해당 작업을 올리려면 gitignore에 .idea 파일을 삭제하는 게 낫다고 판단 gitignore에 추가하기.idea/*.iml 그 외에도 여러 파일들에 대하여 추가하고 싶은 파일들에 대하여 gitignore 코드를 작성하고 싶다면,다음 사이트를 참고하자.https://www.toptal.com/developers/gitignore/ gitignore.ioCreate useful .gitignore files for your projectwww.toptal.com  추가로 기억해둘 것초기에 세팅할 때 .idea가 제대로 gitignore에 처리되어있는지를 꼭..

[Github] 깃허브 에러 - branch checkout error : pathspec did not match any file(s) known to git 해결

git checkout branch 도중 에러가 발생했다.작업 중이던 브랜치가 github 원격에서의 브랜치와 다르거나,브랜치로 checkout을 하려고 했는데 현재 있던 branch가 원격과 다르기 때문에 오류가 발생하는 것이다. 에러 메세지error: pathspec ['branch 이름'] did not match any file(s) known to git원인 : 로컬 저장소의 git과 원격 저장소의(remote) git 정보가 동기화되지 않아 생긴 오류이다 해결 방안git remote updategit checkout [브랜치명]remote(원격) 버전으로 update를 하고 난 후에 전환하고싶은 브랜치로 전환이 가능해진다.

[JAVA] 객체 타입을 확인하는 instanceof

instanceof- 객체 타입을 확인하는 연산자 (= 참조변수가 참조하고 있는 인스턴스의 실제 타입을 알아보기 위한 연산자)- 형변환 가능 여부를 확인하며, boolean 타입으로 결과를 반환- 객체가 어떤 클래스이자, 어떤 클래스를 상속받았는지 확인할 때 사용하는 연산자 다음과 같은 형식으로 사용한다.객체 instanceof 타입 사용 예제class SuperClass { // 부모클래스 코드}class SubClass extends SuperClass { // 자식클래스 코드} public static void main(String[] args) { SuperClass tmpObj = new SuperClass(); SubClass sub = new SubClass(); Syste..

[JAVA] Dto 클래스에 대하여 record로 사용하는 이유

record는 간단한 데이터 타입의 구조를 저장할 때 쓰는 것으로, DTO 클래스에 적합한 형식이다. 예시코드1public record User( String id, String password ) { public static User of( String id, String password ) { return new User(id, password); }} 이를 사용하면 Getter 생성자도 필요없이 그냥 바로 필드에 접근하는 것이 가능하다. 간단하고 불변하는 객체에 대하여 적용하기 좋다. (확장성은 부족)또한 불변 데이터를 모델링하는 데에 집중하도록 함그래서 DTO 클래스에 대하여 record를 적용한다.(Entit..

[JAVA] [](배열)과 List의 차이점

배열[] 과 List의 차이를 알아보자.  우선적으로 가장 큰 차이점은배열[] 은 자료의 타입 중 하나이며,List는 인터페이스다.  배열의 특징배열은 고정된 크기의 자료 구조로, 선언할 때 크기를 지정해야 한다.배열의 크기는 한 번 지정되면 변경이 불가능하다! = 배열은 정적 크기를 가짐-> 이 특징이 add, remove와 같은 메서드를 사용할 수 없는 이유가 됨!배열은 인덱스를 사용해 값에 직접적으로 접근 가능하다배열의 요소는 단일 데이터 타입을 가져야한다. ex) int[], String[] 등으로 선언됨int numbers[] = new int[6];String words[] = new String[7];   List의 특징List는 java의 컬렉션 프레임워크(Collection framewo..

[JAVA] 소수를 판별하는 메소드 작성하기

java를 기반으로 소수인지 아닌지를 판별하는 메소드를 작성하기 필요한 변수 int N, boolean is_primefor 문을 통하여 수 N에 대하여 나눠지는 수가 있는지를 2부터 차례대로 나눠보면서 확인만약에 나눠지는 수가 있다면 (if문 처리) is_prime= false를 부여하며 반복을 종료최종적으로 소수인 N에 대하여는 처음 설정한 is_prime true값을 반환public static boolean isPrime(int N) { // 소수인지 판단하는 메소드 boolean is_prime = true; for (int x=2; x

[Github] The requested URL returned error: 403

$ git push -u origin main 명령어 실시로 커밋을 하려고 했더니remote: Permission to {repository 이름} denied to {username}fatal: unable to access '{repository 주소}' The requested URL returned error: 403 위와 같은 오류가 떴다.   실제로 해결한 방법 제어판 -> 사용자 계정 사용자 계정 -> 자격 증명 관리자-> 일반 자격 증명 여기서 깃허브 계정 삭제하고 다시 로그인 하면서편집기에서 커밋 다시 시도해보기 했더니 인텔리제이와 깃허브 연동에 성공했다