IT/git (11) 썸네일형 리스트형 github에 push하기 위해서 git쪽에 세팅하는 git remote관련 > git remote > git remote -v ==> github에 push 하기 위해서 세팅되어 있는 이름과 github url목록들을 보여주기 위한 명령어이다. ==> 뒤에 -v가 붙으면 verbose라고 해서 이름과 url을 다 보여주고 -v를 빼면 이름만 보여준다. > git remote add "이름" "url주소" ==> github에 push하기 위해서 이름과 url세팅 하는 명령어다. ==> 보편적으로 이름은 origin으로 쓴다. > git remote rename "전 이름" "새 이름" ==> git 이름 바꾸기 위한 명령어 > git remote remove "이름" ==> 설정한 git remote를 삭제 하기 위한 명령어 > git push "remote설정한 이름(주로 o.. git clone관련(git기록11) > git clone "컴퓨터에 받을 url" ==> git clone 후에 github 오픈 소스 프로젝트 중에서 받을 코드 url을 입력하면 된다. ==> 예를 들면 대부분 github에서 소스를 받을꺼면 "> git clone https://github.com/경로" 이런식으로 입력을 하게 된다. git restore관련된 내용들(git기록9) > git restore "파일명" ==> git checkout HEAD 파일명과 유사하다. 만약 잘못 입력하고 저장했을 경우에 다시 복구를 시킬려면 ctrl+z가 안되는 경우에 git restore 파일명을 적으면 바로 커밋했던 단계로 간다. > git restore --source HEAD~1 "파일명" ==> restore --source HEAD~1 "파일명"으로 적으면 이번 commit했던 바로 전 커밋 단계로 복귀를 한다. 대신에 포인터는 맨 마지막에 브랜치명을 가리킨다. git checkout 처럼 과거로 가지 않고 detached head가 되지 않는다. > git restore --staged "파일명" ==> 만약 파일을 작업 하고 git add 특정파일을 stage에 옮겼는데 파일에.. git checkout 관련된 것들과 과거로 돌아가기 (git기록8) > git checkout "commit해쉬번호" ==> git checkout 후 7자리의 commit해쉬번호를 기재하면 과거의 commit했던 내역으로 갈 수있다. 원래는 commit해쉬번호가 굉장히 기니까 git log --oneline으로 명령어를 쳐서 7자리로 해쉬번호로 가길 추천한다. ==> 보통 checkout "commit해쉬번호"로 입력하면 detached head라고 나오는데 이상한 것 아니고 그 앞에 있던 commit내용들 다 있으니까 걱정하지 말자. ==> 패턴 : 특정 과거의 commit해쉬번호로 가서 git switch -c "브랜치명" 이나 git checkout -b "브랜치명"을 입력해서 과거의 기록에서 새로운 가지 치기를 해서 만들 수 있다. **알면 도움 되는 내용: g.. git Stash관련된 것들 (git기록7) > git stash > git stash save ==> 이 두 개의 명령어는 다른 브랜치에서 마스터 브랜치로 switch를 할때 충돌 방지를 위해서 쓰기도 하고, 본질적인 작동은 커밋 하기 전에 변경 사항을 다른 곳에 임시 저장이라고 생각 하면 좋다. stash라는 뜻이 잠시 임시 저장한다라는 의미가 있기 때문이다.(알고리즘의 stack pop원리와 똑같은 원리이다.) ==> 만약 작업을 하고 있다가 다른 브랜치로 가기 전에 git stash라는 명령어를 치면 git status에서 변경사항이 없다고 나온다. 그리고 안전하게 switch를 해주면 된다. ==> 주의해야할것은 stack pop처럼 작동하기 때문에 뭐를 변경하고 stash 하고 또 변경하고 stash하면 계속 stack에 쌓인다. 그래서.. git Diff관련된 것들(git기록6) $ git diff diff --git a/something.txt b/something.txt ==> 여기서 a/something.txt는 기존에 있던 것이고 b/something.txt는 수정한 내용이다. index 976a4c1..7333d63 100644 ==> Hashing 내용이라서 자세하게 안 보고 그냥 참고만 하길 --- a/something.txt ==> 기존 내용 +++ b/something.txt ==> 바뀐 내용 @@ -1 +1,2 @@ ==> -1은 기존에 시작 줄, +1은 수정한 파일에에서 -yeah 옆에 2는 2줄이고 마이너스(-)는 기존이고 플러스(+)표시는 바뀐 내용이라고 \ No newline at end of file 보면 된다. +yeah +I feel good \ N.. git Merge와 관련된 것들 합치는 것(git기록5) Fast forward Merge -만약에 Master 브랜치에 A, B가 있고 "A"라는 브랜치에 A, B, C, D가 있으면 A라는 브랜치가 마스터 브랜치의 있는 항목들이 포함되어 있고 추가적인 요소가 더 있는 경우에는 master브랜치에 가서 A라는 브랜치를 merge하면 master의 기록은 A, B, C, D로 된다. 아래 구도1의 예시를 보면 master 브랜치가 두개가 있고 "A"라는 브랜치가 master의 브랜치와 동일한 내용 두개와 추가로 다른 2개 commit한 내용이 있다면, 구도2에서 master에서 A브랜치를 merge하는 경우에 Fast Forward merge 가 된다. master => O - O / "A" Branch => O - O - O master => O - O - .. git Branch(브랜칭) 관련된 것들과 명령어들(git기록4) > git branch ==> git 브랜치(나뭇가지랑 유사) 들을 확인할 수 있고 앞에 *(별)이 붙는 경우에 현재 HEAD의 위치이다. ==> HEAD는 그냥 포인터라고 생각하면 된다. > git branch "브랜치명" ==> 새로운 브랜치를 만들고 이름은 "브랜치명"이된다. 주의할점은 새로운 브랜치를 만들때 띄어쓰기 하면 안된다. ==> 브랜치만 만들뿐 아직 포인터는 마스터에 있다. > git log를 치면 헤더가 마스터랑 새로운 브랜치명에 가리키는 것을 볼 수가 있다. **참고 => 알고리즘에서 링크드리스트를 다 코드를 짜지는 못해도 어떻게 만들어지고 구도를 이해하면 브랜치를 이해하기 좀 수월하다. > git switch "브랜치명" ==> 현재 있는 HEAD를 브랜치명으로 옮겨진다. ==>여기.. 이전 1 2 다음