프로그래밍 538

생활코딩 Git 정리 – 한개만 커밋해보기

4. 한개만 커밋해보기아래에서 readme.txt앞쪽 노란색 ...은 이미 커밋이 된 파일중에 수정된 파일을 의미하고?은 아직 커밋이 되지 않은 파일을 의미한다. 파일을 클릭하면 위와 같이 수정된 부분이 출력된다. 만약 다음과 같이 2개만 선택 후 커밋을 하면 다음과 같이 된다. 그러면 다음과 같이 나머지는 커밋되지 않은 상태로 바뀐다. 여기서 Unstaged fileds에서 파일을 선택하는 것을 working copy라고 하고 Unstaged files에서 staged files로 옮기는 것을 add라고 한다. 그리고 다음의 공간을 repository(저장소)라고 부른다. readme.txt를 add한 상태에서 수정을 하게되면 다음과 같이 readme.txt가 두 곳에 존재한다.이 상태에서 커밋하면 s..

프로그래밍/Git 2017.02.07

생활코딩 Git 정리 – 버전 만들기(commit)

3. 버전 만들기(commit) stage all버튼을 눌러서 수정된 작업을 위로 올리고 commit을 누른다 tool에서 options로 가면 다음과 같은 화면이 있다. Full name과 이메일 주소가 커밋하는 자신의 이름과 이메일주소이다. 다음과 같이 뜨는것이 바로 commit 작업이다. 만약 소스를 수정하는 작업을 했다면 다음과 같이 uncommited changes라는 내용이 뜬다. 다음과 같이 수정된 파일이 나온다. 그럼 다시 commit을 해보자. 다음 버튼을 눌러서 staged files로 올리고 File Status 탭을 누르고 글을 써준 뒤 commit 버튼을 눌러보자 그럼 다음과 같이 또하나의 버전이 생긴 것을 볼 수 있다. 또 한번 반복하면 다음과 같이 3개가 된다. 출처 : htt..

프로그래밍/Git 2017.02.07

생활코딩 Git 정리 – Git 설치하기

1. Git 설치하기 https://git-scm.com에서 설치파일을 다운로드 받는다. 다음과 같이 세팅후 쭉 NEXT를 누른다 설치 후 Git Bash 프로그램을 실행시켜본다. 그리고 git 명령어를 쳐서 다음과 같이 나오면 설치에 성공한 것이다. 그 다음 GUI환경에서 GIT을 제어하기위해서 SourceTree를 설치한다. https://www.sourcetreeapp.com에 접속해서 설치파일을 다운 받는다. 소스트리 설치하기 쭉 Next를 눌러준다. 이런게 뜨면 계속을 누른다. 회원가입을 해주고 Use an existing account를 눌러준다 로그인 후 실행 화면 출처 : https://opentutorials.org/course/1492

프로그래밍/Git 2016.12.25

Node.js 생활코딩 정리 – CRUD + Auth MYSQL 버전 모두 합치기

CRUD + Auth MYSQL 버전 모두 합치기 마지막으로 app_mysql2.js에다가 app_multi_user_mysql3.js의 소스를 합쳐서 로그인과 CRUD기능이 있는 웹애플리케이션을 만들어보자 이번에는 app_mysql2.js를 복사해서 app_mysql3.js를 만들어서 작업을 한다. app_mysql3.js var app = require('./config/mysql/express')(); var passport = require('./config/mysql/passport')(app);//반드시 패스포트는 위쪽에 써야됨 var auth = require('./routes/mysql/auth')(passport);//auth.js파일 불러옴 passport를 함수의인자로 넘겨줌 app...

Node.js 생활코딩 정리 - CRUD + Auth MYSQL 버전 라우트 복잡도 낮추기

CRUD + Auth MYSQL버전 라우트 복잡도 낮추기 이번에는 라우트의 복잡도를 낮추는 작업을 해보자. (업로드 기능은 삭제함) topic에 관련된 라우트는 topic.js로 다 옮김 app_mysql2.js var express = require('express');//익스프레스를 가져옴 var bodyParser = require('body-parser') var app = express(); app.use(bodyParser.urlencoded({ extended: false }));//body parser를 사용함 app.locals.pretty = true;//템플릿 줄바꿈 app.set('views', './views/mysql');//템플릿 폴더 위치 표시 app.set('view eng..

Node.js 생활코딩 정리 – CRUD + Auth MYSQL버전을 여러 개의 파일로 나누기3

CRUD + Auth MYSQL버전을 여러 개의 파일로 나누기3 이번에는 app_mysql.js를 최적화 시켜본다. 기존의 app_mysql.js를 복사해서 app_mysql2.js를 만든다. 그리고 먼저 예전에 views_mysql에 있던 jade 파일들을 복사해서 /views/mysql/topic폴더에 넣는다. 복사 전 복사 후 그리고 jade 폴더가 바꼈으므로 다음의 소스를 수정해준다. app_mysql2.js var express = require('express');//익스프레스를 가져옴 var bodyParser = require('body-parser') var fs = require('fs'); var mysql = require('mysql'); var conn = mysql.create..

Node.js 생활코딩 정리 – CRUD+Auth MYSQL버전을 여러개의 파일로 나누기2

CRUD + Auth MYSQL버전을 여러개의 파일로 나누기2 이제 더욱 간단히 데이터베이스부터 express모듈 passport모듈까지 모두 쪼개보자 /config/mysql/express.js module.exports = function(){ var express = require('express'); var session = require('express-session'); var MySQLStore = require('express-mysql-session')(session); var bodyParser = require('body-parser'); var app = express(); app.set('views', './views/mysql');//jade 파일 루트 app.set('view ..

Node.js 생활코딩 정리 – CRUD + Auth MYSQL버전을 여러개의 파일로 나누기 1

CRUD + Auth mysql 버전을 여러개의 파일로 나누기1 app_multi_user_mysql3.js 작업 중 html 소스를 jade로 바꾸기 귀찮으면 다음 사이트를 이용하자(html2jade.org) 처음에는 login페이지와 register 페이지를 jade로 분할해보자 /views/mysql/auth/login.jade h1 Login form(action='/auth/login', method='post') p input(type='text', name='username', placeholder='username') p input(type='password', name='password', placeholder='password') p input(type='submit') a(href='..

Node.js 생활코딩 정리 – 사용자 정의 모듈 만들기

사용자 정의 모듈 만들기 코드를 더욱 압축시키기위해 사용자 정의 모듈을 만들어 보자 /lib/sum.js (사용자 정의 모듈) //아래 _sum함수의 로직은 숨기게 된다. function _sum(a,b){ return a+b; } //require가 아래 함수로 치환된다. module.exports = function(a, b){ return _sum(a,b); } module2.js (사용자 정의 모듈을 사용하는 소스) var sum = require('./lib/sum'); console.log(sum(1,2)); 실행 결과 다음과 같이 실행하면 값을 얻을 수 있다. 이번에는 js파일에 여러개의 함수를 정의해보자 /lib/calculator.js (사용자 정의 모듈) //sum함수 정의 module..