728x90

발생 Error

Git Bash에서 다음 명령어를 입력할 경우,

$ git push

fatal: The current branch main has no upstream branch.
To push the current branch and set the remote as upstream, use

    git push --set-upstream origin main

To have this happen automatically for branches without a tracking
upstream, see 'push.autoSetupRemote' in 'git help config'.

 

fatal: The current branch main has no upstream branch

Error 발생

 

 

Error 원인

현재 브랜치의 원격 저장소 설정을 정확하게 하지 않았기 때문에 발생

 

 

해결 방법

git bash에 push를 안내대로 진행

$ git push --set-upstream origin main

Enumerating objects: 3, done.
Counting objects: 100% (3/3), done.
Delta compression using up to 4 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (2/2), 263 bytes | 65.00 KiB/s, done.
Total 2 (delta 0), reused 0 (delta 0), pack-reused 0
To https://github.com/HJ0216/TIL.git
   681b6a8..3dc0358  main -> main
branch 'main' set up to track 'origin/main'.

git push --set-upstream origin main의 의미

➡️upstream: 로컬과 연결된 원격 저장소

로컬 저장소: origin의 원격 저장소를 main으로 지정하여, main으로 push하라는 의미

 

 

 

참고 자료

📑 [Git] 깃 오류 해결 fatal: The current branch master has no upstream branch.

📑  git 최초 push 시 왜 --set-upstream 옵션을 설정해야할까?

728x90
728x90

발생 Error

Git Bash에서 다음 명령어를 입력할 경우,

$ git mv Machine_Learning ai
fatal: bad source, source=Machine_Learning, destination=ai/Machine_Learning

fetal: bad source

Error 발생

 

 

 

Error 원인

1. 동일한 폴더 이름을 대소문자만 변경하는 경우

2. 변경이 필요한 file name을 잘못 지정한 경우(⭐)

-> ai로 이름이 변경되어 Machine_Learning이라는 폴더가 없음에도 바꿀 대상으로 Machine_Learning을 지정

-> git status를 입력하니,

On branch main
Changes to be committed:
  (use "git restore --staged <file>..." to unstage)
        renamed:    Machine_Learning/ann_model.py -> AI/ann_model.py
        renamed:    Machine_Learning/useful_method_from_numpy.py -> AI/useful_method_from_numpy.py

이미 폴더명이 AI로 변경되어 Changed to be committed된 상태였다.

 

 

해결 방법

수정사항 없이 다음 단계 이동

git add .
git commit -m "change the folder name"

 

 

 

참고 자료

📑 [Git] 폴더명 변경사항 반영하기

728x90
728x90

이 글은 양주종의 코딩스쿨 리눅스(Linux) 기초 강좌 30강 모음 수강하며 정리한 글입니다.

 

04강 기본 명령어

1. who / whoami / w / users / arch

who: 시스템에 접속중인 사용자 목록

w: 시스템에 접속중인 사용자의 활동 목록

 - 서버의 시스템 시각, 부팅 이후 경과 시간, 접속 사용자 수, 사용자간 CPU 사용률 비교

 - USER: 접속자 이름

 - TTY: 접속자가 사용하는 Terminal 이름

 - FROM: 사용자가 로그인한 호스트 이름 또는 IP 주소

 - LOGIN@: 접속 시간

 - IDLE: 접속 후 활동하지 않고있는 시간

 - JCPU: 접속 터미널에 연결된 모든 프로세스의 CPU 사용시간

 - PCPU: 사용자가 프로세스(WHAT)를 수행하는데 소요된  CPU 사용시간

 - WHAT: 현재 사용 명령어

(🗃️ 참조: [Linux] 리눅스 접속 사용자 확인 명령어 비교 : w, id, who, users, whoami)

whoami: 사용자 이름 반환

users: 접속중인 사용자 반환

arch: architecture, CPU 종류 반환(uname -m과 동일)

 

 

2. logname / uname / hostname / id

logname: 로그인한 사용자 이름 반환(whoami와 동일)

uname: Unix 종류 반환

hostname: 컴퓨터 이름

hostname -d: 컴퓨터 이름의 도메인만 반환

id: 접속중인 모든 사용자의 숫자 id 반환

id -g: 접속중인 사용자의 숫자 그룹 id 반환

 

 

3. 명령어 --help: 간단한 도움말

 

 

➕ 기타 주요한 명령어

clear: 화면 초기화

history: 사용 명령어 반환

728x90
728x90

이 글은 양주종의 코딩스쿨 리눅스(Linux) 기초 강좌 30강 모음 수강하며 정리한 글입니다.

 

03강 Putty 환경 설정

 

 

CentOS7 시작 후 Putty 실행

Putty: Host Name:127.0.0.1 port 22 MyLinux -> Save -> Open

login: j passwd: j

 

⭐ Change Settings

Appearance에서 글꼴 등을 바꾸고 Session의 Saved Session에 저장

Duplicated Session: 이중창 만들기

login: j로 이중 접속이 가능하며, who 명령어를 통해서 접속 상태를 확인할 수 있음

 

 

root 사용자(#)와 일반 사용자($)의 차이

root 사용자와 일반 사용자의 차이

1. 일반 사용자는 본인 디렉토리 외의 공간에서 활동 불가

 

2. pwd 명령어는 기본 디렉토리 위치를 반환하며 기본 사용자와 root사용자는 기본 디렉토리가 상이

728x90
728x90

이 글은 뉴렉쳐 오라클 데이터베이스 SQL 강의 수강하며 정리한 글입니다.

 

01강 - 학습안내(SQL, DB, DBMS의 의미와 필요성)

 

 

🧐 DB, DBMS, SQL의 의미와 필요성

1. DataBase가 필요한 이유

행정실: 등록금 납입 관련 Data 보유

도서관: 도서 대여 관련 Data 보유

⚠️ 행정실에서 등록금 납입 후 도서관에서 도서를 대여하고자 할 경우, Data가 동기화되지 않았다면 등록금을 납입하고도 도서를 대여할 수 없는 문제가 발생

이에 Data를 각각 보유하고 있지 말고, DataBase를 둔다면

  • 데이터의 불일치를 제거할 수 있음
  • 도서관에서 갖고 있는 행정실 데이터의 중복을 없앨 수 있음

 

⚠️ 데이터의 중복과 불일치를 제거했지만, 행정실과 도서관이 각각 갖고있는 정보와 연결시키는 어려움이 발생할 수 있음

⚠️ 동시성 문제로 사용자들이 상이한 작업을 수행하고자 할 때 문제가 발생할 수 있음(수정 vs 삭제)

⚠️ 한 번에 많은 사용자들이 접속하기때문에 접근 속도 및 보안 문제가 발생할 수 있음

 

👩‍🔧 DataBase에 관리자를 두어 DataBase로의 직접 접근을 막고 발생할 수 있는 문제를 해결할 수 있음

 

 

DataBase의 관리자와의 소통을 위한 약속, SQL(Structural Query Language)

SQL: Data Base Management System에게 질의하는 명령어

 

SQL 종류

1. DDL: create/alter/drop

→ Data Definition Language, 데이터 정의어: 테이블과 같은 데이터 구조를 정의하는데 사용되는 명령어

2. DML: select/insert/update/delete

→ Data Manpulation Language, 데이터 조작어: DB 테이블에 들어있는 데이터에 변형을 가하는 종류의 명령어

3. DCL: grant/revoke

→ Data Control Language, 데이터 제어어: DB 관리자가 사용자의 DB 접근에 대한 제어하는 명령어

4. TCL: commit/rollback/savepoint

→ Transaction Control Language, 트렌젝션 제어어: DCL에서 Transaction*을 제어하는 명령어

* Transaction: 하나의 논리적인 작업 단위를 구성하는 세부적인 연산들의 집합

→ 꼭 같이 작동되거나 같이 작동되지 말아야 하는 SQL문장들을 하나로 묶어두는 것(계좌 이체 시, 출금과 입금)

 

 

 

참고 자료

📑 [DB] DDL, DML, DCL 이란?

📑 [SQL] TCL(transaction control language)이란

 

소스 코드

🔗 HJ0216/TIL/OracleSQL

 
728x90