코드스테이츠49 Git 워크플로우-Advanced Basic에서는 포크를 통해 파일을 내 워크스페이스로 옮겨와서 작업을 하고 Pull Request를 하는 방법을 알아보았다. 이번에는 다른 사람들과 협을 할 때의 워크플로우를 알아보자 1. Init 명령어 git init 프로젝트를 시작하면서 내 컴퓨터에 새로운 디렉토리를 만들었다면 이 디렉토리는 내 컴퓨터에만 존재하는 상태다. init을 이용하면 새로만든 디렉토리를 Git의 관리하에 있는 Git Repository(Local Repository)로 변환이 가능하다. 새로운 Repository를 초기화하는 데에도 사용한다. 2. Remote add origin 명령어 git remote add origin init을 통해 Local Repository를 생성했다면 이제는 Local을 Remote에 연결해.. 2021. 10. 15. Git 워크플로우-Basic 개발자들의 버전관리를 위해 이용하는 Git 오늘은 Git에 대해 알아보자. Git 개념도 1. Fork 위의 개념도에는 나와 있지 않지만, 우선 제일 먼저 Fork를 진행해야한다. Fork란 마치 나무에서 잔가지가 뻗어나가듯이 다른 버전으로 나의 Remote Repository에 다른사람의 Remote Repository를 옮기는 작업을 뜻한다. 2. Clone 명령어 git clone 'repository 주소' Clone은 나의 Remote Repository에 있는 파일과 폴더들을 로컬 저장소(컴퓨터)에 옮기는 작업을 뜻한다. 그리고 작업 시작! 작업이 끝났다면 아래 과정을 거치게 된다. 3. Status 명령어 git status 변경된 파일을 Rocal Repository에 저장하기 이전에 변경.. 2021. 10. 15. Linux 패키지 매니저 apt 우분투에는 기본적으로 apt라는 패키지 매니저가 내장 되어 있다. apt란 Advanced Pacakge Tool의 약자로 소프트웨어의 설치와 제거를 핸들링한다. apt update: 패키지 목록 갱신 apt list --upgradable: 업그레이드 가능한 패키지 목록 출력 apt upgrade: 전체 패키지 업그레이드 apt --only-upgrade install "패키지 이름": 특정 패키지만 업그레이드 apt install "패키지 이름": 패키지 설치 apt list --installed: 설치된 패키지 보기 apt search "패키지 이름": 패키지 검색 apt show "패키지 이름": 패키지 정보 확인 apt remove "패키지 이름": 패키지 삭제 2021. 10. 13. Linux CLI 명령어 해당 명령어는 Linux - Ubuntu를 기준으로 작성되었습니다. 1. Terminal 단축키 컨트롤 + 알트 + t 2. 현재 위치 확인 pwd print working directory의 약자 3. 폴더 생성 mkdir '생성할 폴더명' make directories의 약자 4. 폴더의 파일 확인 ls list의 약자 -a : all을 뜻한다. 숨어있는 폴더나 파일까지 모두 보여준다. -l : long format을 뜻한다. 폴더나 파일의 포맷을 모두 보여준다. * d로 시작하는 포맷은 폴더를 -로 시작하는 포맷은 파일을 뜻한다. 5. 폴더를 GUI 탐색기로 실행하기 nautilus '실행할 폴더명' nautilus는 파일 관리자 시스템으로 이름 '노틸러스'는 앵무조개를 뜻한다고 한다. shell과.. 2021. 10. 13. CSS 박스모델 HTML/CSS 태그들은 각자의 영역을 가지게 되고 각자의 영역들이 박스(공간)을 가지게 된다. 박스는 항상 직사각형이고, 너비와 높이를 가지게 되는데 CSS를 통해 그 크기를 설정할 수 있다. 그중 필수적으로 이해해야할 개념이 하나 있는데, 바로 block / inline / inline-block 개념이다. 줄바꿈이 되는 박스 : block 대표적 태그: 줄바꿈이 되는 박스란 태그를 사용했을 때 다음 태그가 저절로 줄바꿈이 되는 태그를 뜻한다. 즉 태그를 사용하면 줄 전체 공간을 차지하며 이외의 태그가 배치되지 못한다. 옆으로 붙는 박스 : inline 대표적 태그: 옆으로 붙는 박스란 콘텐츠의 내용만큼 공간을 차지하기 때문에 줄 전체 공간을 차지 하지 않는다. 남는 공간에는 다른 태그들이 공간을 차.. 2021. 10. 10. HTML 태그 오늘은 마크업언어 HTML에서 자주사용되는 태그들에 대해 알아보자 자주 사용되는 태그 리스트 태그 설명 Division Span Image Link & Unordered List & List Item Input (Text, Radio, Checkbox) Multi-line Text Input Button HTML태그는 수십개가 넘지만 다른 언어의 메소드와 마찬가지로 우선은 자주사용하는 것들을 위주로 배우고, 필요한 기능이 있으면 그때 그때 찾아서 사용하는게 좋다. div vs span div와 span태그는 웹페이지의 공간을 나눌 때 사용한다. 이전에는 많이 사용된 태그이지만 HTML5 이후 시멘틱 태그가 소개되면서 이후 Section태그로 대체되고 있다. 이 둘의 차이점은 대략 다음과 같다. div는 .. 2021. 10. 9. HTML 기본구조 이번에는 HTML의 구조에 대해 알아보자 HTML 요소(element) 콘텐츠내용 위의 구성요소들을 모두 HTML의 요소라고 부른다. 그리고 위와같이 시작과 끝을 알리는 태그를 시작태그(opening tag) 종료태그(closing tag)라고 한다. class="클래스명" 시작태그 내에서 클래스나 스타일 등을 설정하는 것을 속성( attribute)이라고 부른다. 속성은 다시 두가지로 나눠질 수 있는데, 속석의 이름(attrbute name)과 속성의 값(attribute value)이다. 위의 예제를 통해 알아보자면, class는 속성의 이름(attribute name) 그리고 "클래스명"은 속성의 값(attribute value)가 된다. 2021. 10. 9. JS 반복문 C언어 수업 때 어떤 강사님이 했던 말이 있다... 컴퓨터는 멍청합니다. 하지만 성실하고 정확하죠. 그렇다. 반복문이야 말로 컴퓨터의 성실함과 정확함이 돋보이는 기능이 아닐까?! 반복문에 대해 알아보자. for 구문 문법은 아래와 같다. for (초기화; 조건식; 증감문) {} 초기화 부분에는 초기값을 설정하고 조건식에는 반복되는 조건을 넣는다. 마지막으로 초기화된 값이 어떻게 증감하는지를 넣으면 끝! 초기화 for (; 조건식; ) {증감문} 경우에 따라서는 위처럼 초기화와 증감문이 다른곳에 위치하기도 한다. for in 구문 배열과 함께 쓰이면 아주 좋은 for in 구문이다. 문법은 아래와 같다. for ( 변수 in 배열 ) {} 위와 같이 구문을 작성하면 {}안의 명령문을 배열에서 하나씩 변수의.. 2021. 10. 8. JS 문자 이번에는 JS의 문자열에 대해 알아보자. JS는 문자열을 다룰 수 있는 여러가지 기본적인 메소드를 지원한다. str[index] str[index]는 str이라는 문자열에서 index위치에 있는 문자열을 뽑을 때 사용한다. ex) var str = 'abcde'; console.log(str[0]); --> a console.log(str[1]); --> b console.log(str[2]); --> c console.log(str[3]); --> d * read-only이기 때문에 값을 새로 할당하지 않는이상 변경 불가! .indexOf() 찾고자하는 문자열의 위치를 알고자 할 때 쓴다. ex) 'Sean Kim'.indexOf('Kim'); *찾고자 하는 문자열이 없으면 -1 반환 .lastInde.. 2021. 10. 6. JS 조건 비교 연산자 우선 일반적인 비교연산자의 종류와 의미를 알아보자. 사실 수학시간에 봤던 기호들이라 이해하기에 어렵지는 않다. 비교연산자 종류 의미 = 이하 === 같음 !== 다름 하지만 요놈들은 뭔가 특이한데... 과연 = / == / === 이 등호들에게는 어떤 차이가 있는 것일까? 우선 "="등호는 사실 비교를 위해 사용하는 기호가 아닌 변수에 값을 대입할 때 쓰는 기호임으로 비교연산자로 사용하지 않는다. "=="와 "==="의 비교는 약간 어려울 수 있는데, 간단하게 정리하자면 == 혹은 !=는 type까지 엄격하게 비교하지 않는다. 그렇다. ==보다 더 빡세게 비교를 하는 녀석이 ===이다. 예를 들어 설명하자면, 다음과 같다. 1 == 1 // true 1 == "1" // true 1 === .. 2021. 10. 6. JS 함수 함수란 무엇인가? 함수란 아래와 같이 다양한 해석이 가능하다. 코드의 묶음 기능의 단위 입력과 출력간의 매핑 여튼 간단하게 설명하자면, 커피콩을 넣으면 커피가 나오는 기구랄까..? *매핑이란 용어가 종종 나오곤 하는데, 개인적으로 매핑의 뜻은 옛날에 구몬 학습지를 통해 했던 올바른 뜻 잇기 문제와 같다고 생각한다. (지극히 개인적인 생각입니다....) 함수의 구성 함수는 아래와 같은 구성으로 이루어져 있다. keyword name parameter body 예를 들자면, 요롷다. function fName (a,b) { console.log(a+b) } 함수 사용법 앞에서 말했듯이 함수는 커피머신과 같다. 커피머신을 사용하기 위해서는 1. 커피머신과 2. 작동버튼이 필요하듯이 함수도 선언과 호출을 통해 .. 2021. 10. 6. JS 타입 변수에는 여러가지 타입이라는 것이 존재한다. 컴퓨터는 그렇게 똑똑하지 못하기 때문에 일일이 변수에 숫자가 들어가는지 문자가 들어가는지 등을 알려주는 것인데, 요게 처음에는 이해가 가진 않아도 프로그래밍을 계속하다 보면 점차 아하~ 하게 되는 듯 하다. 변수 타입의 종류 타입 예 참/거짓 (boolean) true, false 숫자 (number) 1, 53 문자 (string) "Hello World!" 함수 (function) let example = function () {} 객체 (object) example = { a : "ㄱ", b: "ㄴ" }; 위 4개의 경우 기본형 변수타입이라고 하며 아래 함수와 객체의 경우 여러개의 타입이 섞일 수 있다. *참고로 undefined도 타입이다! (변수에 값.. 2021. 10. 6. 이전 1 2 3 4 5 다음