IT

Git Stash vs Shelve in IntelliJ IDEA

itgroup 2023. 5. 8. 22:06
반응형

Git Stash vs Shelve in IntelliJ IDEA

나는 그것에 매우 익숙하지 않습니다.shelveGit의 측면 (EDIT: Git의 측면이 아니라 IntelliJ IDEA의 기능)shelve).

한다면stash완성되지 않은 일을 제쳐두기 위해 사용됩니다.shelve그럼요? 어디에 쓰실 건가요?

예: VCS 메뉴에서 프로젝트 업데이트

프로젝트 업데이트 옵션

하나는 얻을 것입니다 (IntelliJ IDEA 2019.2)

프로젝트 업데이트 프롬프트 창

git shelveGit에는 존재하지 않습니다.

오직:

  • 작업 디렉토리와 인덱스의 현재 상태를 기록하지만, 다시 깨끗한 작업 디렉토리로 돌아가려는 경우
  • 로컬 수정 내용을 저장하고 HEAD 커밋과 일치하도록 작업 디렉터리를 되돌립니다.

2008년에는 분기의 수정 사항을 분리하기 위한 오래된 프로젝트 키트 선반이 있었지만, 요즘에는 그다지 유용하지 않을 것입니다.

Intellij IDEA 쉘프 대화 상자에 설명되어 있듯이 "쉘핑셸핑 해제" 기능은 VCS(버전 제어 시스템 도구)에 연결되지 않고 IDE 자체에 연결되어 아직 커밋하지 않은 보류 중인 변경 사항을 변경 목록에 일시적으로 저장합니다.

Git 2.13(2017년 2분기) 이후에는 개별 파일도 저장할 수 있습니다.

Git와 함께 JetBrain IDE를 사용하는 경우, "선반 및 선반 해제 외에도 스태킹 및 언스테시 동작이 지원됩니다.이러한 기능에는 많은 공통점이 있습니다. 주요 차이점은 패치가 생성되고 적용되는 방식입니다.쉘프는 개별 파일 또는 파일 묶음으로 작동할 수 있는 반면, Stash는 변경된 파일 묶음으로 한 번에 작동할 수 있습니다.여기 그들 사이의 차이점에 대한 몇 가지자세한 정보가 있습니다."

이전 답변 외에도 한 가지 중요한 참고 사항이 있습니다.

shelveJetBrain 제품 기능(예:WebStorm,PhpStorm,PyCharm등).저장된 파일을 저장합니다..idea/shelf디렉토리입니다.

stash의 하나입니다.git옵션들.저장된 파일을 아래에 저장합니다..git디렉토리입니다.

변경사항을 다른 곳에서 공유하지 않을 경우 변경사항을 저장하는 대신 보류하는 것이 좋습니다.

스태킹은 깃 기능이며 파일 내부의 특정 파일이나 변경 사항을 선택할 수 있는 옵션을 제공하지 않습니다.셸빙은 이를 수행할 수 있지만 이는 IDE 고유의 기능이지 깃 기능이 아닙니다.

여기에 이미지 설명 입력

보시다시피 선반에 포함할 파일/라인을 지정할 수 있습니다.저는 스태킹으로는 그렇게 할 수 없다는 것을 참고하세요.

IDE에서 쉘프를 사용하면 .git 폴더에 변경 사항이 저장되지 않으므로 패치의 이동성이 제한될 수 있습니다.

몇 가지 유용한 링크:

쉘프는 JetBrain 기능인 반면 Stash는 동일한 작업에 대한 Git 기능입니다.두 기능 중 하나를 사용하여 커밋 및 작업 손실 없이 다른 분기로 전환할 수 있습니다.저의 개인적인 경험은 선반을 사용하는 것입니다.

셸브는 IntelliJIDE 기능입니다.Stash는 Git 기능입니다.최신 버전의 Git을 사용하여 개별 파일을 저장할 수도 있습니다.

칫스캐시-p

IMO인 Shelve는 일반 스토리지보다 여러 저장소의 변경 사항을 함께 보관할 수 있다는 장점이 있습니다.

언급URL : https://stackoverflow.com/questions/28008139/git-stash-vs-shelve-in-intellij-idea

반응형