git , github 초기 설정과 사용 방법

2star_·2024년 10월 15일
0

ML/DL

목록 보기
2/18

Linux 명령어 (필수)

요약

  1. pwd: 현재 작업 중인 디렉토리의 경로를 출력합니다.
  2. ls: 현재 위치의 폴더와 파일 목록을 보여줍니다.
  3. ls -al: 현재 위치의 숨김 파일을 포함하여 파일의 자세한 정보를 보여줍니다 (권한, 소유자 등).
  4. cd {경로}: 지정한 {경로}로 디렉토리를 이동합니다.
  5. cd ..: 상위 디렉토리로 이동합니다 (한 단계 위로).
  6. mkdir {이름}: 지정한 {이름}의 폴더를 생성합니다.
  7. touch {이름}: 지정한 {이름}의 파일을 생성합니다.
  8. start .: 현재 디렉토리를 기본 파일 탐색기에서 엽니다 (주로 Windows에서 사용).
  9. rm {이름}: 지정한 파일을 삭제합니다.
  10. rm -r {이름}: 폴더와 그 안의 내용을 삭제합니다.

예시

git 사이트 들어가서 git bash 설치 후 진행

설치 이유: Windows에서 리눅스 명령어를 입력하기 위해서...
파워쉘은 남 주라고 하셨다

git bash 실행 후

1@DESKTOP-AFJSUIL MINGW64 ~
$ cd ~/desktop

1@DESKTOP-AFJSUIL MINGW64 ~/desktop #desktotp으로 설정된다.
$

1@DESKTOP-AFJSUIL MINGW64 ~/desktop # make directory ! 'test' 폴더 만들기
$ mkdir test

1@DESKTOP-AFJSUIL MINGW64 ~/desktop 
$ ls

test # 만들어진 'test' 폴더를 보여준다.

1@DESKTOP-AFJSUIL MINGW64 ~/desktop 
$ cd test # test 파일로 경로 지정

1@DESKTOP-AFJSUIL MINGW64 ~/desktop/test
$ touch test123.py # 'test123.py' 파일 생성

1@DESKTOP-AFJSUIL MINGW64 ~/desktop/test
$ ls # 파일확인
test123.py #정상적으로 만든 파일 나온다.!

1@DESKTOP-AFJSUIL MINGW64 ~/desktop/test
$ rm test123.py # 테스트 파일 삭제

1@DESKTOP-AFJSUIL MINGW64 ~/desktop/test
$ cd .. # 상위폴더로 이동

1@DESKTOP-AFJSUIL MINGW64 ~/desktop
$ rm -r test # 테스트 폴더 삭제

git 시작하기

1@DESKTOP-AFJSUIL MINGW64 ~/desktop/git_class # git_class 경로
$ git init # 현재 디렉토리를 새로운 Git 리포지토리로 초기화
Initialized empty Git repository in C:/Users/1/Desktop/git_class/.git/
#정상 작동 후 디렉토리에 .git이라는 숨겨진 폴더가 생성

git init을 실행하면 현재 디렉토리가 Git 리포지토리가 되어, 이 디렉토리 내에서 버전 관리를 할 수 있게 된다.
초기화된 리포지토리는 처음엔 비어 있지만, 이후 파일을 추가하고 변경 사항을 관리할 수 있다.


git의 영역

Working Directory

  • 정의: 내가 실제로 작업하고 있는 디렉토리.
  • 예시: 예를 들어, git_class 같은 폴더에서 파일을 직접 수정하고 있는 상태입니다.

Staging Area

  • 정의: 커밋(commit)으로 남기고 싶은 파일을 임시로 저장해두는 곳입니다.
  • 목적: 특정 버전으로 관리하고 싶은 파일들을 여기서 잠시 머무르게 하여, 커밋 준비 상태로 만듭니다.

Repository

  • 정의: 커밋된 파일들이 저장되는 공간입니다.
  • 목적: 실제 커밋된 파일의 버전들이 보관되며, 프로젝트의 변화를 추적할 수 있습니다.

VS Code에서 터미널(bash)로 설정 후 진행했음.

.git을 생성한 폴더 git_class에 파일을 만들고 진행했다.

파일명은 001.py , 002.py로 진행했다.

설명

  1. git init
  • 현재 디렉토리를 Git 저장소로 초기화하는 명령어입니다.
  • 이 명령어를 실행하면 .git이라는 숨겨진 폴더가 생성되며, 해당 디렉토리가 Git으로 버전 관리되는 프로젝트로 바뀝니다.
  1. git status
  • 현재 Git 저장소의 상태를 확인하는 명령어입니다.
  • working directory 및 staging area의 파일 상태를 알려줍니다.
  • untracked, 수정된 파일 (modified), staging area에 있는 파일 등이 각각 어떤 상태인지 확인할 수 있습니다.
1@DESKTOP-AFJSUIL MINGW64 ~/Desktop/git_class (master)
$ git status 			#git의 상태를 알려줌 자주자주 체크하며 진행한다!
  1. git add
  • 특정 파일을 Staging Area에 추가하는 명령어입니다.
  • 정한 파일을 Staging Area에 올려 다음 커밋에 포함되도록 준비합니다. 예를 들어, git add 001.py001.py 파일을 스테이징 영역에 추가하는 것입니다.
1@DESKTOP-AFJSUIL MINGW64 ~/Desktop/git_class (master)
$ git add 001.py 

1@DESKTOP-AFJSUIL MINGW64 ~/Desktop/git_class (master)
$ git status
On branch master

No commits yet

Changes to be committed:
  (use "git rm --cached <file>..." to unstage)
        new file:   001.py
  1. git add .
  • 현재 디렉토리의 모든 변경 사항(추가, 수정된 파일 등)을 스테이징 영역에 추가하는 명령어입니다.
  1. git commit -m "message"
  • 스테이징 영역에 있는 파일들을 커밋하여 저장소에 기록하고, 변경 사항을 설명하는 메시지를 추가하는 명령어입니다.
1@DESKTOP-AFJSUIL MINGW64 ~/Desktop/git_class (master)
$ git commit -m "add: 001.py"

[master (root-commit) 2245f23] add: 001.py
 1 file changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 001.py
 
  1. git log
  • 커밋 히스토리를 확인하는 명령어입니다.

commit 222222222222222222222222222222222222222222 (HEAD -> master)
Author: "USER NAME" <"your@Email.com">
Date:   Tue Oct 15 16:14:01 2024 +0900

    add: 001.py

참고

git의 유저네임과 이메일 변경하기
git config --global user.name "USER NAME"
git config --global user.email "your.email@example.com"


요약

새 파일을 생성하면 먼저 Untracked 상태에 있습니다.
git add를 사용하면 Staging Area로 이동하여 Tracked 상태가 됩니다.
git commit을 사용하면 저장소에 저장되어 프로젝트의 일부분으로 기록됩니다.

profile
안녕하세요.

0개의 댓글