본문 바로가기

⚙️ Computer Science

(9)
[git 사용법] - 깃으로 협업하기, git clone, push, pull 깃으로 협업하기 깃허브의 또 다른 장점은 협업할 때 나타난다. 회사 컴퓨터에서 작업하던 것을 깃허브에 올려놓으면, 집에 있는 컴퓨터에서도 언제든지 접속해서 소스를 내려받고 커밋한 후 푸시할 수 있다. 팀원들도 각자 원하는 시간과 장소에서 편하게 프로젝트에 접근할 수 있다. ✔️ 원격 저장소 복제 - git clone 우선 본인의 깃허브에 있는 저장소의 HTTPS 주소를 가져온다. $ git clone "원격 저장소 주소" "디렉토리 이름" 디렉토리가 없다면, 저장소를 복제하면서 동시에 디렉토리를 만들 수 있다. ✔️ 로그 확인하기 $ cd "디렉토리 이름" $ git log cd 명령을 사용해 본인이 만든 디렉토리로 이동하고 log로 로그를 확인한다. 이렇게 원격 저장소를 복제하면 지역 저장소와 원격 저..
Operating System - 컴퓨터 시스템 계층 구조, 운영체제, 운영체제의 역할, 운영체제와의 관계, 운영체제의 필요성, 운영체제의 기능 멀티 코어 CPU CPU 내부에 2개의 프로세서가 포함되어 있음 2개의 프로그램을 동시에 실행 병목 현상이 발생해서 속도가 저하된다. 컴퓨터 시스템 계층 구조 사용자 응용 프로그램 (한글, Chrome, VSCode, 카카오톡 등) 운영체제 (운영체제 커널 코드, 디바이스 드라이버) 컴퓨터 하드웨어 위의 표처럼 컴퓨터 시스템은 계층 구조로 설계되어 있다. 운영체제는 응용프로그램과 하드웨어 사이의 인터페이스이다. 그렇다면, 컴퓨터 시스템이 계층 구조로 설계된 이유는 무엇일까? 계층 간의 독립성 확보를 위해서 이다. 사용자 운영체제나 하드웨어에 대해 몰라도 응용프로그램으로 컴퓨터를 사용할 수 있다. 응용프로그램 컴퓨터 하드웨어의 타입이나 구조, 제어 방법을 몰라도 개발이 가능하다. ex) CPU의 크기, 메..
[git 사용법] - Branch 브랜치 이동, 변경, 파일 복원, 삭제, 병합(merge), Branch 협업을 하면 개발자들은 작업 레파지토리에서 소스 코드를 공유하면서 작업을 한다. 만약 어플을 만드는데 어떤 개발자는 채팅 기능을 만들고, 또 어떤 개발자는 검색 기능을 맡아 작업한다고 가정해보자. 채팅 작업이 끝난 후 검색 작업을 수행한다면 연관성이 없는 기능 단위의 작업을 비효율적으로 하고 있는 것이다. 각자 작업을 다 한 후에 합치는 방법이 더 효율적일 것이다. Git에서는 branch와 merge라는 명령으로 이것을 가능하게 한다. Branch는 독립적으로 작업을 할 수 있는 공간이다. main branch가 아니라, 채팅은 chat branch에 검색은 search branch 에서 작업을 하면 서로 독립적인 공간에서 작업을 하기 때문에 서로의 작업에 영향을 주지 않는다. 각자의 작업..
[git 사용법] - github 가입, repository 생성, token 발급 Github 세팅 https://github.com/ 에 들어가서 회원가입을 먼저 한다. (메일 인증까지 해야한다) 왼쪽 프로필 밑에 New를 클릭하여 Repository를 생성한다. Repository name은 본인이 마음대로 설정하고, Public(공개) / Private(비공개)를 설정한 후 Create repository를 클릭한다. Add a README file은 나중에 설정할 수 있다. ✔️ git pull 원격 저장소에 업데이트 된 데이터를 가져오고 병합할 때 사용 $ git pull origin main pull 은 원격 저장소에 업데이트 되어있는 데이터를 받아오고 병합할 때 사용한다. ✔️ git add, commit, push $ git status $ git add . $ git ..
[git 사용법] Git이란? - Git 시작하기 'Git 사용법' 을 쓰게 된 이유 git과 github를 사용하면서 너무 어려웠다. 터미널에서 여러 명령어를 잘 입력하다가도 갑자기 오류가 발생하거나 아예 리파지토리가 날라가는 경우도 많았다. 협업을 하면서 git과 github에 대해 제대로 모르는 상태에서 사용하다보니 conflict 충돌도 많이 일어나 지옥의 반복이였다. branch도 수없이 만드는데 뭐가 뭔지 제대로 몰라 코드도 엉망인 경우도 많았다. 처음부터 다시 제대로 알고 사용하고자 이 글을 작성하게 되었다. Git이란? Git은 소스코드 및 파일의 변경내역을 저장하는 분산 버전 관리 시스템 github는 등록 사용자와 비등록 사용자 모두에게 사이트의 공개 저장소를 찾아볼 수 있는 권한을 제공 github는 보통 소스코드를 관리하는데 많이 ..
Operating System - 컴퓨터 계층 구조, CPU, 캐시 메모리, 메모리, bus, CPU 레지스터, Context Switching 컴퓨터 시스템을 구성하는 계층 응용소프트웨어 운영체제 컴퓨터 하드웨어 계층 구조의 특징 사용자는 응용프로그램과 GUI / 도구프로그램 (툴, 유틸리티)을 통해 컴퓨터 활용 하드웨어는 모두 운영체제의 배타적 독점적 지배 받음 사용자나 응용프로그램의 하드웨어에 대한 직접 접근 불허 (반드시 운영체제를 통해서만 접근이 가능) 컴퓨터 하드웨어 구성 CPU 프로그램 코드를 해석하여 실행하는 중앙처리장치 컴퓨터의 가장 핵심 장치 전원이 공급될 때 작동 시작, 메모리에 적재된 프로그램 실행 메모리 CPU에 의해 실행되는 프로그램 코드와 데이터가 적재되는 공간 반도체 메모리 RAM 프로그램은 실행되기 위해 반드시 메모리에 적재되어야 함 캐시메모리 (Cache Memory) CPU의 프로그램 실행 속도를 높이기 위해 C..

728x90