20240418 앨리스 토끼굴 (git, markdown)

RingKim1·2024년 4월 18일

TIL

목록 보기
3/77
post-thumbnail

Today

1. git

깃(Git /ɡɪt/[5])은 컴퓨터 파일의 변경사항을 추적하고 여러 명의 사용자들 간에 해당 파일들의 작업을 조율하기 위한 스냅샷 스트림 기반의 분산 버전 관리 시스템이다. 위키백과

기억하기 쉽게 정리

  • 코드 변경점 기록 / 버전 관리 도구 / 형상 관리 도구
  • 소프트웨어의 변경사항을 체계적으로 추적하고 통제

왜 사용하는가 ?

대규모 프로젝트의 경우 여려명의 개발자가 함께 작업을 하게 되는데,
프로젝트가 진행되는 메인 폴더를 기준으로 여러 개발자들이 각자의 폴더와 파일을 맡아 진행하게 된다.

소프트웨어 프로젝트는 간단한 테스트를 하려고 해도 모든 파일과 폴더가 전체적으로 구성되 있어야 가능.
각자의 진행사항을 서로간에 어떻게 고융할 것인가하는 문제 발생!

👉 협업

git과 GitHub

📌 Git

  • 오픈 소스 버전 관리 시스템(VCS: Version Control System)
  • 로컬에서 버전 관리
  • 소프트웨어 개발 및 소스 코드 관리에 사용

    git은 본인의 코드와 그 수정내역을 기록하고 관리하도록 돕는 버전 관리 프로그램이며, 로컬에서 프로젝트의 기록을 스스로 관리할 수 있도록 해줍니다. git을 통해 브랜치를 생성하고 이전 브랜치로 복구, 삭제, 병합이 가능합니다. 하지만 로컬 저장소를 사용하기 때문에 다른 개발자와 실시간으로 작업을 공유할 수 없습니다.

📌 Github

  • Git Repository를 위한 웹 기반 호스팅 서비스
  • 클라우드 서버를 사용해서 로컬에서 버전 관리한 소스코드를 업로드하여 공유 가능
  • 분산 버전 제어, 액세스 제어, 소스 코드 관리, 버그 추적, 기능 요청 및 작업 관리를 제공

    github는 git 저장소를 관리하는 클라우드 기반 호스팅 서비스입니다. git 저장소 호스팅 서비스는 클라우드 기반으로 다른 사람과 소스코드 공유가 가능하며 git의 기본적인 기능을 확장하여 제공합니다. 또한 클라우드 서버에 소스를 올리기 때문에 한 프로젝트에 여러 명의 사람이 참여하여 버전 제어 및 공동 작업이 가능합니다.

Git은 커피, Github는 커피샵 유튜브 노마드 코더 니콜라스

초기 세팅

1.Git설치
2.GitHub 가입
3.초기 설정(cmd창)
    
    git config ——global user.name “my_name” (영어 이름)
    
    git config ——global user.email “e-mail” (GitHub 가입 시 쓴 이메일)
    
    *설정 확인 : git config ——list
4.git 초기 세팅 값 입력
5.git remote -v를 통해 연결고리 확인

git 필수 명령어 리스트(추후 재정리)

1. git init(initialize) : 코드 관리를 시작하는 명령어

프로젝트 시작 전 딱 한번만 입력

정확한 프로젝트 폴더(경로)에서 입력해야 함

.git이라는 폴더가 생기며 코드 변경을 git에서 추적

2. git add & commit : 코드를 저장하는 명령어

    git add 파일명 : 저장하기 전 저장할 파일 지정

    git commit -m “메시지 작성” : 실제로 저장하는 명령

    git add . : 내 프로젝트의 변경사항을 한 번에 지정하는 법

    Working directory / Stading area / Repository

3. git status : 저장 여부 확인하는 명령어

    어떤 파일이 변경됐는지, 어떤 파일이 add(지정)됐는지 등 변경 상태를 확인하는 명령어

4. git log : 저장 내역을 확인하는 명령

    이후, q를 눌러서 탈출

5. git push : 백업할 경우

    git push origin 브랜치명

    *브랜치명 - 일단은 main으로 한다.

    - 첫 업로드 시 3개의 명령어 의미
        - git remote add origin <github 주소>
            - git push “github 주소” 브랜치명 : 귀찮다
            - github 주소를 origin 이라는 이름으로 저장
            - git push orgin 브랜치명 : 편하다
        - git branch -M main
            - 기본 브랜치 = master > 노예 제도와 관련
            - 현재 브랜치명(master)을 main으로 바꾼다!
        - git push -u origin main
            - git push origin main : 귀찮아
            - git push : 이 명령어만 입력해도 git push origin main 해줘!

        ```bash
        git remote add origin <github 주소>
        git branch -M main
        git push -u origin main
        ```

6. git clone  : 처음 코드를 가져올 경우 사용

    git clone  “github 주소” . : 사용

7. git pull : 변경사항만 가져올 경우 사용

    git pull origin 브랜치명

    안될 경우 터미널 내 힌트를 잘 볼 것!

    - 터미널에 아무것도 입력이 안되는 vim 에디터가 뜬 경우

        esc > : > wq > enter

        vim editor 바꾸고 싶을 경우 Googling


    터미널 에러 해결 : ctrl+c

2. markdown

마크다운텍스트 기반의 마크업 언어로 2004년 존 그루버에 의해 만들어졌다. 쉽게 쓰고 읽을 수 있으며 HTML로 변환이 가능하다. 특수기호와 문자를 이용하여 매우 간단한 구조의 문법으로 빠르게 컨텐츠를 작성 할 수 있음.

마크다운 문법(syntax)

1.제목(header)

  • #뒤에 띄어쓰기를 넣어주는게 권장하는 방법이다.
 	# 제목1
	## 제목2
	### 제목3
	#### 제목4
	##### 제목5
	###### 제목6

제목1

제목2

제목3

제목4

제목5
제목6

2.줄바꿈(Line Breaks)

  • 띄어쓰기 2번 또는 <br/>로 표현 가능

3.수평선/구분선(Horizontal Rule) <hr/>

  • - , * , _ 이 3개의 기호를 3번 연속 작성하면 구분선이 생긴다.
---
***
___
<hr/>




4.글자 강조(Emphasis)

  • 문자열 앞 뒤로 특수 기호가 붙어서 사용된다.

    _기울이기_
    **기울이기**
    
    __굵게__
    **굵게**
    
    ___굵게 기울이기___
    ***굵게 기울이기***
    
    ~~취소선~~
    
    <u>밑줄</u>

    기울이기
    기울이기
    굵게
    굵게
    굵게 기울이기
    굵게 기울이기
    취소선
    밑줄

5.인용문(BlockQuote)

  • 인용된 내용을 따로 묶어두고 싶다면 >를 입력
  • >개수를 늘려가며 인용문 안에 중첩해서 내용을 넣을 수 있음.

    인용문 안에 또 표시하고 싶을 때

    이렇게 사용

    이렇게도 사용

6.목록(List)

순서 목록

숫자+마침표+스페이스 를 입력하면 숫자 목록을 만들 수 있다.
그 상태에서 엔터를 누르면 하위 목록이 생성

순서가 없는 목록

-, *, + +스페이스 후에 텍스트를 입력하면 목록이 생성되고,
엔터로 줄을 바꿔 스페이스 2번 후 -+스페이스를 입력하면 하위 목록이 생성

7.코드(Code)

인라인코드
  • 백틱(`)을 사용해서 코드를 강조하는 인라인 코드를 작성할 수 있다.
    코드를 강조할때 쓴다.
코드블럭(Tab, 백틱)
  • Tab을 누르면 코드블럭으로 작성가능하다. 엔터를 한 번 치면 여러줄을 입력할 수 있으며
    다시 일반 텍스트로 가고싶으면 엔터를 두번!

    Tab을 누르면
    여러줄의 입력하는
    코드블럭이 이렇게 생긴다.
  • 다른 방법으로는, 백틱(`)을 코드 시작과 끝에 세 번 연속 넣으면 여러줄의 코드블럭을 만들 수 있다.

코드 하이라이트
  • 코드블럭 시작점에 사용 언어를 선언하면 코드 하이라이트가 가능
    '''java
    public class Hello World{
    public void main(String[] args) {
    System.out.println("Hello World");
    }
    }
    '''
public class Hello World{
	public void main(String[] args) {
		System.out.println("Hello World");
	}
}

3.JavaScript browser

정리 노트


Learn

TIL을 이렇게 이용하는게 맞는지 모르겠고 무엇인가 배워감에 끝이 없다는게 이런 느낌인가 싶다.
무엇이 중요한지 모르겠음 "모르는 것이 너무 많음"
모든게 낯설고 추상적이며 생소하다.
하나를 배우려고 하면 그것을 설명하는데 다른 개념이 도입되고 또 그것알 알아보려고 하다가 시간이 간다.
>>> 앨리스 토끼굴, infinity loop

주절주절

내일은 무엇을 해야하나..?

참고자료
[GITHUB 입문] Git과 GitHub의 차이
마크다운 작성법

profile
커피는 콜드브루

0개의 댓글