티스토리 뷰

PS

[Github] GitHub 사용하기

Aaron 2019. 9. 4. 20:05
반응형

< 요약 >

  - 파일이 수정 혹은 추가되었을 경우 상태 확인

    # git diff


  - 커밋할 목록에 파일 추가

    # git add [fileName.java]


  - 커밋하기

    # git commit -sm "[commit message]"


  - (새로 등록 시에만 수행)Github 원격 저장소 등록

    # git remote add origin(별칭) [repository URL]


  - Github 원격 저장소에다가 push 하기

    # git push origin(별칭) master


  - 변경된 내용 로컬에 내려받기

    # git pull origin master



#. 준비 사항

  - Github 가입 (https://github.com/)

  - git 설치 (https://git-scm.com/downloads)



#. github

  - 개발 과정, 소스 파일 등을 관리

  - history 관리가 되어 특정 시점으로 코드 복구 가능, 코드가 수정된 과정을 볼 수 있음



#. git 필수 명령

  ㅇ add : 커밋할 목록에 추가

  ㅇ commit : 커밋(history의 한 단위)

  ㅇ push : 현재까지의 commit 내용들을 github에 넣기



1. git 초기화 


  ㅇ 디렉토리 생성

    # mkdir [dirName]


  ㅇ 생성한 디렉토리로 이동

    # cd [dirName]


  ㅇ 해당 폴더를 git 초기화

    # git init

Initialized empty Git repository in E:/[filePath]/.git/



2. git commit


  ㅇ 커밋할 목록에 파일 추가

    # git add [fileName.java]

      ㄴ 옵션

           -A : 모든 변경사항 적용

             . : 새 파일 및 수정 적용(삭제 파일이 없을 때)

           -u : 수정 및 삭제 적용(새 파일 없을 때)


    - add 취소

      # git reset HEAD


  ㅇ 커밋하기

    # git commit -m "[commit message]"

[master (root-commit) ...] [commit message]

1 file changed, 1 insertion(+)

create mode ... [fileName.java]


    - 커밋 취소하기

      # git reset HEAD^


  ㅇ git 상태 확인

    # git status

   - 커밋할 파일이 없을 경우

On branch master

nothing to commit, working tree clean

    

  - 새로운 파일이 디렉토리에 추가되었을 경우

On branch master

Untracked files:

  (use "git add <file>..." to include in what will be committed)

        [fileName.java]


nothing added to commit but untracked files present (use "git add" to track)


  - 새로운 파일을 add(커밋할 준비)시킨 후 상태를 확인하는 경우

On branch master

Changes to be committed:

  (use "git restore --staged <file>..." to unstage)

        new file:   [fileName.md]


  - 기존의 파일이 수정된 수 상태를 확인하는 경우

On branch master

Changes to be committed:

  (use "git restore --staged <file>..." to unstage)

        modified:   [fileName.java]


  ㅇ log 확인 (커밋한 파일들 확인)

    # git log

commit ... (HEAD -> master)

Author: [githubID] <[githubEmail]>

Date:   Wed Sep 4 18:30:56 2019 +0900


    Add [fileName.md]


commit ...

Author: [githubID] <[githubEmail]>

Date:   Wed Sep 4 18:28:17 2019 +0900


    Add [fileName.java]


  ㅇ 파일이 추가 혹은 수정되었을 경우 상태 확인

    # git diff

warning: LF will be replaced by CRLF in [fileName.java].

The file will have its original line endings in your working directory

diff --git a/[fileName.java] b/[fileName.java]

...



3. 원격 저장소 생성 및 push


  ㅇ 새로운 원격 저장소 생성 

    - New repository

     


    - 이름 설정 및 Create repository

   


    - 해당 url 복사 후

    


  ㅇ Github 원격 저장소 등록

    # git remote add origin(별칭) [repository URL]


  ㅇ 원격 저장소 설정 확인

    # git remote -v


  ㅇ Github 원격 저장소(origin)에다가 push 하기

    # git push origin(별칭) master

Enumerating objects: 9, done.

Counting objects: 100% (9/9), done.

Delta compression using up to 8 threads

Compressing objects: 100% (7/7), done.

Writing objects: 100% (9/9), 478.16 KiB | 23.91 MiB/s, done.

Total 9 (delta 1), reused 0 (delta 0)

remote: Resolving deltas: 100% (1/1), done.

To [repository URL]

 * [new branch]      master -> master



#. commit message


  ㅇ 커밋 메시지 수정

    # git commit --amend

   (기존 커밋 메시지를 지우고 새로운 커밋 메시지를 작성)

   


  ㅇ 수정 후 push

    # git push origin(별칭) master

    (충돌 에러 발생 시)

    # git push origin master -f


반응형

'PS' 카테고리의 다른 글

c++ Optimized  (0) 2020.04.07
[Github] fork 사용하기(다른 저장소 내려받기)  (0) 2019.09.04
댓글
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday