본문 바로가기

Git

[GIT] 원격 저장소에 Reset, Revert Push하기 Reset 과 Revert 의 가장 큰 차이점은, 해당 커밋에 대한 이력이 남느냐, 남지 않느냐라는 부분이고, Reset 의 경우, 아예 없던 일 처럼 초기화, 즉 이력이 남지 않게되고, Revert 의 경우에는, 커밋에 대한 이력과 Revert 이력 둘다 남게 되는 차이점이 있다. // commit a1234 있다는 가정하 진행 // git reset [옵션] [Commit ID] // soft : Index 유지, 로컬 작업 파일 유지 ( Index : ADD, staged 상태 여부 ) // mixed(default) : Index 취소, 로컬 작업 파일 유지 // hard : Index 삭제, 로컬 작업 파일 삭제 # git reset --hard a1234 // git revert [ Commi.. 더보기
[GIT] STASH 복구 [GIT] STASH 복구 develop 브랜치에서 작업 중인데, 2.x 버전에 문제가 생겨, hotfix 2.x 브랜치로 전환을 하고 싶은데, 아직 커밋할 수 없는 작업 중인 소스들은 어떻게 하지 ? STASH 는 이러한 상황에서 현재 브랜치에서 작업하던 소스들을 저장하는 명령어 어라... 필요없다고 생각해서 삭제했던 STASH가 실제 사용하던 소스였네??? 아... 다시해야되나 ? 삭제한 Stash List git fsck --unreachable | grep commit | cut -d ' ' -f3 | xargs git log --merges --no-walk 삭제한 Stash 복구시키기 git update-ref refs/stash -m "STASH 이름" 복구한 STA.. 더보기
[SourceTree] 소스트리 SSH Clone [SourceTree] 소스트리 SSH Clone HTTP 를 통해서 클론하는 방법도 있지만, SSH를 통해서 하는 것이 더 안전합니다. 한번만 해보면 간단하고, 안전하다는 마음에 안정감도 생겨서 유용하게 쓰일것입니다. 예시는 GIT LAB - Source Tree 입니다. 소스트리 1) SSH KEY 생성 먼저, SSH 통신을 위해서는 SSH KEY 가 필요합니다. 이미 생성해두신 분들이라면 해당 부분은 읽고 넘어가시면 되겠습니다. KEY 생성도구입니다. Generate 후, 마우스로 Key Generator 위를 왓다갓다 하셔야 로딩이 진행됩니다. 완료가되면, Save Private Key 를 클릭하여, Pirvate Key 를 원하시는 위치에 저장하시면 됩니다. 지속적으로 사용할 Key 이므로, 내.. 더보기
[GIT] 체리픽 에러 - fatal: You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists). 체리픽해서 원하는 소스를 가져오려다가, 해당 소스가 필요없어져 소스를 폐기한 상태에서, PULL 이나 PUSH 등의 행동을 할 경우, fatal: You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists). Please, commit your changes before you can merge. 위와 같은 에러 메세지가 발생할 수 있다. 결론은 , 체리픽 행동을 마치지 않았으니, 처리하고 진행해라 . 라는 의미 인데, 체리픽 행위를 취소하려면 어떻게 해야 할까 ? ~/git/111 (release/1.0|CHERRY-PICKING) // 체리픽 상태임을 나타낸다. ~/git/111 (release/1.0|CHERRY-PICKING) $ git c.. 더보기
[GIT] CRLF will be replaced by LF in & LF will be replaced by CRLF in 에러 [GIT] CRLF will be replaced by LF in & LF will be replaced by CRLF in 에러 Windows OS 혹은 Mac OS 에서 GIT 을 사용할 때 발생할 수 있는 에러이다. // Unix CRLF will be replaced by LF in [App.js] ... // Windows LF will be replaced by CRLF in [app.js] .... Unix 에서는 한 줄의 끝이 LF(Line Feed) 이고, Windows 의 경우 CR ( Carruage Retyrb ) & LF 로 줄이 이루어져 있다. 이로인해, GIT 에서 에러를 발생시키는 것이다. 따라서 Git 에서 제공해주는 자동변환 기능을 이용하여, 해당 문제를 해결하도록 한다... 더보기