일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 정의
- 프로젝트 여러개
- multi process
- 튜링기계
- 자동판결
- git
- glDrawArrays
- 파일생성 명령어
- glfw
- .sln
- vertex
- fetching
- 솔루션에프로젝트추가
- shader
- VAO
- Qtspim
- fragment
- vertexarrayobject
- visualstudip
- 멀티프로세스
- interface block
- turingmachine
- 시작
- vertex sahder
- 하나의 솔루션
- superbible
- Tutorial
- qtspim stack
- OpenGL
- 수리명제
- Today
- Total
목록개발 | Git (18)
공사중
먼저 이전 포스트에서 적용해보았던 불필요한 Jekyll을 지웠습니다. 여러 페이지가 필요한 것이 아니기 때문입니다. html과 css를 간단하게 공부하고 오픈 소스를 다운 받아서 완성된 파일과 사용법을 올리겠습니다.
1.[본인 ID].github.io라는 이름으로 Repo를 하나 만듭니다. 이렇게 만든 프로젝트의 Master 브랜치에 push를 하면 바로 배포가 됩니다. 2. 이렇게 만들어진 페이지는 아래와 같은 모습입니다.3. 그리고 이 프로젝트를 로컬에서 clone합니다. 그리고 해당 프로젝트 파일로 이동합니다.4. 페이지에서 보여줄 html파일을 작성하고 commit 합니다.5. 이제 이 파일을 master 브랜치에 push 합니다. 그러면 자동으로 프로젝트 이름 url에서 html 파일을 볼 수 있습니다.6. github 페이지에서도 브랜치가 추가될 것을 볼 수 있습니다. 7. 테마를 바꾸어 보겠습니다. 설정에서 테마 선택 버튼을 누릅니다.8. 테마를 선택합니다. 9. 생성된 _config.yml 파일에 선택..
브랜치를 설명할 떄는 원문에 있는 내용을 많이 차용하겠습니다. 정확하게 설명하고 싶기 때문입니다. 모든 버전 관리 시스템은 브랜치를 지원합니다. 개발하다보면 코드를 여러 개로 복사해야하는 일이 많은데, 코드를 통째로 복사하고나서 원래 코드와는 상관없이 독립적으로 개발을 진행할 수 있습니다. 이렇게 독립적으로 개발하는 것이 브랜치입니다. 커밋하면 Git은 현 Stagin Area에 있는 데이터의 스냅샷에 대한 포인터, 저자나 커밋 메시지 같은 메타데이터, 이전 커밋에 대한 포인터 등을 포함하는 커밋 개체(커밋 object)를 저장합니다. 이전 커밋 포인터가 있어서 현재 커밋이 무엇을 기준으로 바뀌었는지를 알 수 있습니다. 최조 커밋을 제외한 나머지 커밋은 이전 커밋 포인터가 적어도 하나씩 있고 브랜치를 합..
Alias는 git을 조금 더 쉽고 편안하게 쓸 수 있도록 도와주는 팁입니다. 긴 명령어를 짧게 줄려서 입력할 수 있도록 해줍니다. C로 치면 #define에 대응하는 개념입니다. 우리는 수정하기 포스팅에서 특정 파일을 Unstage하는 방법으로 아래와 같은 명령어를 배웠습니다. git reset HEAD file 이 명령어를 직관적이고 사용하기도 쉽게 작성하려면 아래와 같이 하면 됩니다. git config --global alias.unstage 'reset HEAD' 이제 두 명령어는 동일한 명령어입니다. git unstage filename git reset HEAD filename 또한 마지막에 작성한 로그를 하나 보는 명령어를 만들 수도 있습니다. git config --global alias..
Git의 태그는 Annotated 태그와 LightWeight태그가 있습니다.LightWeight태그는 브랜치와 비슷하지만 단순히 특정 커밋에 대한 포인터일 뿐입니다. Annotated태그는 Git 데이터베이스에 태그를 만든 사람의 이름, 이메일과 태그를 만드 날짜 그리고 태그 메시지까지 저장합니다.일반적으로는 Annotated을 사용하고 이런 정보를 유지할 필요가 없을 때는 LightWeight를 사용합니다. 먼저 지금까지 만들어 놓은 태그가 있는지 보겠습니다. git tag 당연히 아직 만든 태그가 없습니다. Anootated 태그를 만들기 위해서는 -a 태그를 추가합니다. -m를 사용해서 메시지를 지정할 수 있습니다. git tag -a v1.4 -m "my version 1.4" git show ..
Github에서 데이터 가져오기 포스팅에서는 단순히 데이터를 가져오는 것만 해보았습니다. 이제 원격저장소에 데이터를 저장하는 등 그 이상의 것을 다루려고 합니다. 먼저 용어의 정의가 필요합니다. 원격 저장소는 Remote Repository, 원격 저장소에서 데이터를 받아서 로컬로 가져오는 것은 Pull, 로컬에서 원격으로 데이터를 저장하는 것은 Push입니다. 그리고 다른 사람의 원격 저장소에 "제가 새로운 내용을 추가했는데 이 내용을 당신의 저장소에 추가해서 모든 사람들이 볼 수 있게 만들어주세요."라고하는 것은 Pull Request라고 합니다. git remote 는 연결된 저장소가 어디인지 보여주는 명령어입니다. git clone을 할 때 데이터를 가져오는 장소인 원격 저장소는 기본적으로 'or..
우리가 작업했던 내용들은 대부분 되돌릴 수 있습니다. 하지만 되돌리고난 뒤에 다시 복구하는 것은 불가능합니다. 예를 들어서 커밋을 했을 때 어떤 파일을 추가/삭제하고 싶으면 커밋을 취소할 수 있지만, 취소했다가 다시 복구할 수는 없습니다. 다시 커밋하고 싶은 경우에는 원하는 파일을 Staing Area에 올린 다음에 아래와 같이 입력하면 됩니다. 커밋의 내용에 "아 이 파일 까먹고 안 넣었음."과 같은 내용을 남기지 않을 수 있는 방법입니다. 에디터를 사용하는 방법 git add forgotten_file git commit --amend 에디터를 사용하지 않는 방법 git add forgotten_file git commit --amend -m "덮어씌울 commit 내용" 이렇게 커밋 내용을 덮어씌우..
지금까지 배웠던 git log에 대해서 유용한 옵션을 하나 더 배우겠습니다. git log -p -2 이 명령어는 log를 보여주되 각 커밋의 diff결과를 보여줍니다. -2는 최근 두 개의 커밋에 대한 정보만 보여달라는 뜻입니다. 갯수가 아니라 시간을 기준으로 특정 시점 이후에 생성된 커밋만 보고 싶으면 이렇게 작성하면 됩니다. git log --since=2.weeks git log --since="2 years 1 day 3 minutes ago" 또한 log에 대해서 어떤 파일이 수정됐는지, 얼마나 많은 파일들이 변경,추가,삭제 되었는지 요약해서 보여주는 옵션도 있습니다. git log --stat 그리고 출력하는 내용을 어떻게 출력할지 정의하는 옵션도 있습니다. git log --pretty=o..