특정 파일만 커밋하기!

2023. 3. 8. 20:02Git

728x90

파일 상태 확인하기


git status

 

 

$ git status
On branch master
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
        modified:   src/main/java/econo/app/sleeper/domain/character/Character.java
        modified:   src/main/java/econo/app/sleeper/domain/character/FixedBonusXpPolicy.java
        modified:   src/main/java/econo/app/sleeper/domain/character/PercentBonusXpPolicy.java
        modified:   src/main/java/econo/app/sleeper/domain/character/Status.java
        modified:   src/main/java/econo/app/sleeper/domain/character/XpPolicy.java
        modified:   src/main/java/econo/app/sleeper/domain/sleep/Sleep.java
        modified:   src/main/java/econo/app/sleeper/domain/sleep/SleepAdvisor.java
        modified:   src/main/java/econo/app/sleeper/service/character/CharacterService.java
        modified:   src/main/java/econo/app/sleeper/service/sleep/SleepAdvisorService.java
        modified:   src/main/java/econo/app/sleeper/service/sleep/SleepService.java
        modified:   src/main/java/econo/app/sleeper/service/user/UserService.java
        modified:   src/main/java/econo/app/sleeper/web/sleep/SleepController.java
        modified:   src/main/java/econo/app/sleeper/web/user/dto/SignUpRequest.java
        modified:   src/test/java/econo/app/sleeper/domain/money/MoneyRepositoryTest.java
        modified:   src/test/java/econo/app/sleeper/service/sleep/SleepServiceTest.java

Untracked files:
  (use "git add <file>..." to include in what will be committed)
        src/test/java/econo/app/sleeper/service/character/
        src/test/java/econo/app/sleeper/service/sleep/SleepAdvisorServiceTest.java
        src/test/java/econo/app/sleeper/service/user/

no changes added to commit (use "git add" and/or "git commit -a")

 

Changes not stages for commit과 modified라는 메시지가 파일이 수정되었으며, 수정된 파일들을 staged 되지 않아서 commit이 불가능하다고 말하고 있다.

즉, 이 파일들은 unstaged 상태이다.

 

다음으로, 몇몇 파일들은 Untracked상태이다.

 

modified와 Untracked 상태 모두 git add 명령어를 사용하면, staged상태로 변화한다.

하지만, 모두 stage상태로 변화하게 되면, 특정 파일만 commit을 할 수 없다.

 

현재 원하는 것은 test 파일들을 제외하고 커밋을 하는 것이기때문에 일단 모두 stage 상태로 바꾸고, 

몇몇개의 파일만 다시 unstaged 상태로 만든다.

 

staged 상태에서 unstaged한 상태로 만드는 명령어는 아래와 같다.

 

git restore --staged 파일이름

 

이 상태에서 commit 하면 특정 파일만 commit 할 수 있다~

 

이상입니다!!

 

 

728x90