반응형

전체 글 175

Git(git commit의 원리)

* 들어가기 전 설정 1. f1.txt(text : a), f2.txt(text : b), f3.txt( cp f1.txt f3.txt ) 2. git add f1.txt f2.txt f3.txt3. git commit 4. commit message : 1 -> 커밋 메세지에 해당되는 정보가 objects 안에 저장되어있다.commit을 하면 버전(commit message)도 파일의 내용처럼 objects안에 들어간다.( 결국 커밋도 내부적으로는 객체라고 할 수 있다. ) 커밋 안에는 누가 커밋을 했는지에 대한 정보가 적혀있다.그리고 tree 옆에는 object가 링크되어있다.( tree는 f1.txt이라는 파일과 f2, f3 각각의 파일의 내용이 무엇인지에 대한 정보가 담겨있다. ) -> 방금 우리..

Git(objects 파일명의 원리)

* 파일의 이름이 결정되는 메커니즘이 무엇을 사용하고 있는지 알아보자. 1. 우선 구글에서 sha1 online을 검색하여 http://www.sha1-online.com에 접속한다. 2. 화면에서 "hello"를 입력한 뒤 hash를 눌러보자. -> hello라고 하는 정보는 hash라는 매커니즘을 통과하면 'aaf4....34d'라는 일정한 길이의 텍스트를 얻어낼 수 있다. -> 즉 깃은 'sha1'이라는 해쉬 알고리즘을 통과시켜서 그 파일의 이름을 도출한 다음, aaf4...34d(해쉬값)에서 앞 2글자를 따서 aa라는 폴더를 만들고 f4....34d라는 파일을 만들어서 그 안에다가 hello라는 정보를 저장한다. (실제로는 hello라는 정보만 들어가는 것이 아니고 부가적인 정보 또한 포함된다.)..

Git(git add의 원리)

* git bash에서 작업한 내용입니다. 1. mkdir gitfth2 2. git init 3. vim f1.txt (text : 'a' 입력) //t1.txt를 만든 뒤 git add를 하지 않으면 gistory에 반영되지 않는다. 4. git add f1.txt //이 명령(add) 이후부터 gistory에 f1.txt의 내용이 반영된다. 5. vim f2.txt (text : 'z' 입력) 6. git add f2.txt 7. cp f1.txt f3.txt 8. git add f3.txt * 1~8의 명령을 수행한 뒤 gistory 화면 결과 * 1번째 오브젝트를 클릭한 결과 (\78\981922..........4e85는 78번 디렉터리에 있는 981.....e85파일을 의미한다._ * 2번째..

Git(git init,add,status,commit,log,diff,reset 정리)

1. git init 현재 디렉토리를 git의 (버전)저장소로 만듭니다. (= 현재 디텍터리에 작업을 진행하겠다.) -> .git 생성되는 것을 확인 git은 버전관리를 하게되면 여러가지 정보들이 생성되고 생성된 정보들이 git 디렉터리안에 저장이 된다. 2. git add git은 기본적으로 새로운 파일을 관리하지 않는다. 파일을 관리하기 위해서는 관리 대상으로 등록을 해야한다. 따라서 새로운 혹은 수정된 파일을 만들면 깃에게 add명령을 해서 파일을 관리하라고 말해줘야한다. git add를 실행하면 untracked file이 new file로 변경된다 Q. 왜 이런 기능이 필요한가?-> 우리가 프로젝트를 하다보면 프로젝트의 핵심적인 파일이 있고그 프로젝트를 개발할 때 테스트 하기 위한 임시 파일이 ..

MySQL(group_concat명령어)

DB를 공부하던 중 내가 정말 원하는 명령어를 찾았다. row의 값들을 한 줄로 나열할 수 있는 명령어 * group_concat MYSQL의 group_concat는 시스템 변수(group_concat_max_len)로 상한선이 정해져 있어서 그 이상의 문자열은 잘린다. (상한선의 기본 값은 1024바이트) EX) mysql>SELECT group_concat(user_id) FROM users; 1. 현재 사용중인 DB에 있는 내용 2. group_concat 명령어 사용해서 출력한 결과

반응형