본문 바로가기
GIT

스파르타) 기억할 리눅스 명령어 + 깃 내용 정리

by momomoo 2024. 4. 16.

vs코드 터미널 열고
먼저 bash나 git bash는 무조건 하기 >> 윈도우
 

 

터미널에서 ~ 는 홈을 뜻함 >> 데스크탑보다 더 상위

[리눅스 명령어]

1. pwd (print working directory)
  -현재 내가 작업하는 폴더
 
2. ls(list)
  - 내 폴더 안에 있는 폴더 & 파일 내역을 보여줌(숨겨진 파일 xx)
 
3. ls -a (list all)      >> ls 띄어쓰기-a 
   - 숨겨진 파일도 함께 볼 수 있음 (보통 .으로 시작함)
 
4. cd 폴더명 (change directory)
   - ls 명령어에서 확인된 폴더로 이동 가능
          + 두번 넘어갈때 cd폴더명 > cd 폴더명이 아니라
                 cd 폴더명/폴더명
          +cd.. 은 상위폴더로 이동
 
5. mkdir 폴더명(make directory)
    - 현재 경로에서 폴더를 생성하는 명령어
 
6. touch 파일명 >> 있으면 안만들고 날짜와 시간을 변경해줌
    - 현재 경로에서 파일을 생성하는 명령어     
         + 파일의 생성과 파일의 날짜, 시간을 변경하는 명령어

7. cp -r [복사할 파일/폴더] [붙여넣기 할 위치]: 복사 붙여넣기

8. rm -rf [지울 파일/폴더]: 지우기 (이 명령은 매우 위험합니다. 신중히 사용해주세요!)

 

# 명령어 사용 당시에만 관리자 권한이 부여됩니다.

sudo [실행 할 명령어]: 명령어를 관리자 권한으로 실행한다.

 

# 명령어 사용 이후 모든 명령이 관리자 권한으로 실행됩니다.

sudo su: 관리자 권한이 있는 계정으로 접속한다. (exit 입력하면 관리자 계정에서 로그아웃)
 

 

 

tip >> 방향기 위쪽을 누르면 전에 썼던 명령어가 나온다.

 

 

[깃과 깃허브]

( 파일도 깔끔하게 정리 가능하고, 각 파일의 변경 기록들을 남길 수 있음)
  - 코드 변경점 기록
  - 버전 관리 도구(형상 관리 도구)
  - 소프트웨어의 변경사항을 체계적으로 추적하고 통제하는 것 /// 면접대답
 

깃허브 (백업, 공유, 협업)

 - 백업과 공유가 가능한 온라인 코드 저장소
 
 
깃 >> 기록
깃허브 >> 저장소
  
 
 
 

깃 필수 명령어 리스트

-초기 세팅-
1. git init   
  - 코드 관리를 시작하는 명령어
  - 프로젝트 하나당 시작전 딱 한번 처음에만 해줌  >> 여러번해도 문제는 안생김
  - 정확한 프로젝트 폴더(경로)에서 입력
         >> 잘못하면 데스크탑 전체 파일, 폴더가 다 기록됨
  - (initialize / 초기화하다, 초기 세팅하다의 준말)
 
     폴더 열고 터미널 켠 후 정확한 폴더 확인 필수
         >>  입력창 우측 본인 경로나 아님 pwd로 확인
 
   // Initialized empty Git repository in~~~나오면 성공임
      >> 성공하면 .git이 생성됨 >> 숨겨진 폴더임   >> ls -a 로 확인가능
                 >> 정확한 프로젝트 경로에 있는지 확인 한번 더 해보는 것도 좋음
                 >> 이게 생성된 이후부터 코드 변경을 git에서 추적한다.

 

 


-코드 저장 명령어-
2. git add 파일명
    - 저장하기 전 저장할 파일 지정
 
3. git commit -m "메세지 작성"
    - 실제로 저장하는 명령어 
    - 메세지 작성엔 무슨 코드를 썼는지 자세하게 작성하는게 좋음
     commit은 말하는 시점임 
메세지 작성내용은 사진에 중앙 부분에 기록된다. >> 사진 추가, initial commmit 등등 부분

 
 
 
 
 
 
 
 
     //만약 please tell me who you are 이 뜨면
        계정설정이 안된것
   
     >> 이 두줄 같이 입력하기 
       git config --global user.email " 이메일입력"
       git config --global user.name "이름입력"
 
 
 
     //내 프로젝트 변경사항 한 번에 저장하는 법
        1) git.add . (띄어쓰기 필수)
              > .(점)은 현재 나의 경로(git-test)의 모든 변경된 사항을 말함
        2) git commit -m "메세지"
        3) git status 
              > 더 이상 저장 할게 없다 (notihing to commit)
 
 
-저장 여부-
4. git status
   - 저장 여부 확인하는 명령어
   // 저장이 안되어 있으면
      modified: 파일명  이 뜬다 (빨강)
 
 
-저장 내역 확인-
5. git log
  - 커밋 메세지로 코드 변경점 추측 가능
 
  작동후 commit 숫자(노랑)가 뜨는데 숫자가 커밋 아이디임
      >> 아이디를 이용해서
      >> git diff 코드변경 확인
      >> git reset 과거로 돌아가기 가능
            커밋아이디로 이런게 가능하다.
 
    다보고 q (나가기)
 
  
 

깃허브 사용

1. 저장소 만들기  
new or create  >> repository name 에 이름 입력

             >> redame파일 체크
             >> create reposaitory >> 저장소 완성!

이렇게 뜨면 성공~

 
2. 내 코드 github repositoty에 올리기 및 연동 (내가 만든 저장소)
       
     1. 붉은 박스 부분 복사 

빨간 박스 복사하기

      2. vs코드 터미널에 붙여넣기 (프로젝트 폴더파일 켜둬야함)
          //  깃헙에 그냥 파일 업로드로도 올릴 수 있음, 이건 처음 게시할때만
                   

 

 


 

 

 
 
 
6. git push origin 브랜치
  - 추가로 수정된 코기 깃허브에 반영

 

 


 
 
-깃허브 협업 + 충돌 해결-
7. git clone
  - 코드 복사
 
 
 
    
 

  깃헙 협업과정

1. 협력자 등록하기 (레포지토리 생성 담당)
     깃허브 레포지토리 > 셋팅 > collaborators > add people 검색 (유저네임이나 깃헙이메일)
    >> 받는 사람도 수락해야함 , 깃 메일이나 깃 로그인 이메일로 가서 하면된다.
 
2. 코드 복사해오기 - git clone  (받아오는 사람들)
     작성할 폴더 만들기 >레포지토리 깃허브 주소 복사 > git clone 주소 .      // 띄어쓰기 필수 
                                                                                               >>점은 필수 경로가 달라짐
                                                                                               >> 폴더가 또 생성되어서 폴더 이동해야한다.

                                                     >>  폴더가 있다점 . 붙이고 없다면 . 없애기


         깃 클론(띄어씌기)주소(띄어쓰기).
 
   
 


             작업 순서
        1. 코드 수정
        2. 코드 저장 명령어 실행
            > git add 파일명 & git commit -m "메세지 작성"
        3. git push origin 브랜치명
 

 

 

 


 
8. git pull
   - 다른 사람이 변경한 코드 내 코드에 가져오기
   - push 할 때 오류나면 쓰면 된다.
 
 
 
 
 error 다른 사람이 이미 push 하고 내가 push 하려고 하면 발생하는 오류

 
 
 

 

 

혹시 git pull시 아래와 같이 경고문이 뜬다면
 
밑줄친 첫번째 명령어를 터미널에 그대로 입력 >> 이게 제일 쉬운 방법 (밑에 사진 참고)

 
 
 
 
 
 
만약 vim에디터가 뜨면 ( :wq )
esc > : > wq > enter
 
밑에 사진은 vim 에디터

vim 에디터

 
 
 
 
 
 
-충돌 해결-
pull 하고 충돌이 일어나면 수정 >> 수정가능 둘다 적어도 ok  다른 사람 코드 변경하면 알려주기
 

충돌시 터미널 화면

충돌시 작업화면

 
초록색이 내가 쓴 부분
파란색이 팀원이 쓴 부분

 


 
충돌수정방법
1. <<<<<<HEAD 삭제
2.=======삭제
3.>>>>>>>4182....삭제
4.원하는 코드로 수정
5.해결하고  다시 add, commit push
   
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
   1) 초기 프로젝트 코드 작성
   2) 깃허브 레포지토리 생성
   3) 코드 깃허브에 올리기(git push)
 
 
    이후 코드수정 > 코드 저장 명령어 >git. push origin

 

 

 

 

 

 

 


깃 & 깃허브로  협업 하는 법



 

브렌치 활용

 

====복사본

 

브랜치 생성 명령어

 

> git branch 브랜치이름 
> 이러면 생성되는데 확인이 어렵다

            >> git branch를 치면 확인 가능

                      >> 치면 브랜치들이 나오는데 *초록색이 지금 내가 위치해 있는 브랜치

                            >> 확인하고 q로 빠져나오기

 

 

 

브랜치 이동 명령어

 

git switch 브랜치이름
           >> 보통 이것을 사용

      or

git checkout 브랜치이름

            >> 이건 이동 말고도 과거 코드로 돌아가는 기능도 있다





 

 

 

 

 

브랜치 한번에 생성 & 이동

 

git switch -c 브랜치이름

          or

git checkout -b 브랜치이름

 

 

 

 

 

 

 

 

만약 login 브랜치에서 작업하다가 main으로 이동한다면

 >> main으로 가면 합치기 전이라 사라지지만 다시 login으로 가면 다시 생긴다.

 >> 합치지 않았지만 저장을 했을 경우에는 그런것

 

 

--커밋을 안했다면---

커밋하지 않은 변경사항이 있는 경우:

Git은 스테이징되지 않은 변경사항(워킹 디렉토리의 변경사항)과 스테이징된 변경사항(인덱스의 변경사항)을 각각 관리합니다.

브랜치를 전환하려고 할 때, 만약 현재 브랜치에서 커밋되지 않은 변경사항이 있다면 Git은 다음과 같은 경우에 대해 경고 메시지를 표시하고 브랜치 전환을 막을 수 있습니다.

변경사항이 있는 파일이 다른 브랜치에서도 수정된 경우

브랜치를 전환할 경우 변경사항이 덮어쓰여질 위험이 있는 경우

2. 변경사항을 유지하고 브랜치를 전환하는 방법:

git stash 명령어를 사용하여 커밋되지 않은 변경사항을 임시로 저장할 수 있습니다. 그런 다음 브랜치를 전환하고 필요할 때 git stash pop 명령어를 사용하여 저장된 변경사항을 다시 적용할 수 있습니다.

3. 변경사항을 유지하지 않고 브랜치를 전환하는 방법:

git checkout main 명령어를 사용하여 브랜치를 전환할 때, Git이 커밋되지 않은 변경사항을 덮어쓸 수 있다는 경고 메시지를 표시할 수 있습니다.

이 경우 변경사항을 유지하지 않고 전환하려면 git checkout -f main 명령어를 사용할 수 있습니다. 이 명령어는 강제로 변경사항을 무시하고 브랜치를 전환합니다.

 

 

 

 

 

>> 깃 내용 떠와서 자기 레포지토리 만드는 법

 

 

'GIT' 카테고리의 다른 글

.gitignore가 적용이 안될때  (0) 2024.05.29
.gitignore.io  (0) 2024.05.27
Readme 파일  (0) 2024.04.22
repository(저장소)  (0) 2024.04.22
터미널에 dquote 뜰 때  (0) 2024.04.17