728x90
반응형

Branch 20

git branch, fork, fetch, merge, rebase 및 clone의 차이점

질문 : git branch, fork, fetch, merge, rebase 및 clone의 차이점은 무엇입니까? Git에서 브랜치, 포크 및 클론의 차이점을 이해하고 싶습니까? git pull 아닌 git fetch 를 수행하는 것은 무엇을 의미합니까? merge 과 비교하여 rebase 는 무엇을 의미합니까? 개별 커밋을 어떻게 함께 스쿼시 할 수 있습니까? 그들은 어떻게 사용되며, 왜 사용되며 무엇을 나타 냅니까? GitHub는 어떻게 계산됩니까? 답변 복제본은 단순히 저장소의 복사본입니다. 표면적으로 그 결과는 다른 저장소에서 소스 코드를 다운로드 svn checkout Subversion과 같은 중앙 집중식 VCS와 Git과 같은 DVCS의 차이점은 Git에서 복제 할 때 실제로 모든 기록 및..

개발관련/Git 2022.03.26

이전 커밋에서 새 Git 브랜치를 생성하는 방법

질문 : 이전 커밋에서 새 Git 브랜치를 어떻게 생성합니까? 중복 가능성 / 더 최근 / 덜 명확한 질문 Git을 사용하여 이전 커밋에서 분기 jzbranch 라는 Git 분기가 있고 이전 커밋 ID : a9c146a09505837ec03b 있습니다. 위에 나열된 정보에서 새 브랜치 justin 답변 git checkout -b NEW_BRANCH_NAME COMMIT_ID 이렇게하면 'NEW_BRANCH_NAME'이라는 새 브랜치가 생성되고 확인됩니다. ( "체크 아웃"은 "지점으로 전환"을 의미) git branch NEW_BRANCH_NAME COMMIT_ID 이것은 체크 아웃하지 않고 새 분기를 만듭니다. 댓글에서 많은 사람들이이 작업을 두 단계로 수행하는 것을 선호하는 것 같습니다 . 두 단계..

개발관련/Git 2022.01.17

Git에서 원격 분기 추적을 중지 하는 방법

질문 : Git에서 원격 분기 추적을 어떻게 중지합니까? Git 에서 원격 분기 추적을 어떻게 중지합니까? 구체적인 경우에는 로컬 브랜치를 삭제하고 싶지만 원격 브랜치를 삭제하고 싶기 때문에 추적 중지를 요청하고 있습니다. 로컬 브랜치를 삭제하고 삭제를 원격으로 푸시하면 원격 브랜치도 삭제됩니다. 로컬 및 GitHub에서 Git 브랜치를 삭제하려면 어떻게해야합니까? git branch -d the_branch 할 수 git push 할 때 전파되지 않습니까? git push origin :the_branch 를 실행하는 경우에만 전파됩니까? 답변 Yoshua Wuyts 의 답변 에서 언급했듯이 git branch : git branch --unset-upstream 로컬 브랜치를 삭제할 필요가 없습니다...

개발관련/Git 2021.12.19

Git에서 유효하지 않은 원격 분기 참조 제거하는 방법

질문 : Git에서 유효하지 않은 원격 분기 참조를 어떻게 제거합니까? 내 현재 저장소에는 다음과 같은 출력이 있습니다. $ git branch -a * master remotes/origin/master remotes/public/master 분기 목록에서 remotes/public/master 를 삭제하고 싶습니다. $ git branch -d remotes/public/master error: branch 'remotes/public/master' not found. git remote 의 출력은 public 목록이 없기 때문에 이상합니다. $ git remote show origin 지점 목록에서 '리모트 / 공개 / 마스터'를 삭제하려면 어떻게해야합니까? 업데이트, git push 명령을 시도했..

개발관련/Git 2021.12.16

Git으로 GitHub에서 특정 분기 가져오기

질문 : Git은 GitHub에서 특정 분기를 가져옵니다. 여러 지점이있는 프로젝트가 있습니다. 나는 그들을 GitHub 로 밀고 있었고, 이제 다른 누군가가 프로젝트를 진행하고 있으므로 GitHub에서 브랜치를 가져와야합니다. 마스터에서 잘 작동합니다. xyz 브랜치를 만들었다 고합시다. GitHub에서 브랜치 xyz 를 가져와 내 localhost xyz 에 병합하려면 어떻게해야합니까? 사실 여기 내 대답을 : 망할 놈의 푸시 및 풀 가지 하지만 "! [거부 됨]"오류와 "빨리 감기가 아님"에 대한 내용이 표시됩니다. 어떤 제안? 답변 하지만 "! [거부 됨]"오류와 "빨리 감기가 아님"에 대한 내용이 표시됩니다. Git이 브랜치의 변경 사항을 현재 마스터로 병합 할 수 없기 때문입니다. master..

개발관련/Git 2021.12.12

브랜치를 변경하지 않고 다른 Git 브랜치에서 파일보기

질문 : 브랜치를 변경하지 않고 다른 Git 브랜치에서 파일보기 브랜치를 체크 아웃하지 않고 git 브랜치에서 파일을 열 수 있습니까? 어떻게? 본질적으로 나는 항상 분기를 전환하지 않고 내 github 페이지 분기에서 파일을 열 수 있기를 원합니다. 나는 그것을 수정하고 싶지 않고 단지보고 싶다. 답변 이것은 작동합니다. git show branch:file 여기서 branch 는 모든 ref (branch, tag, HEAD, ...)가 될 수 있고 file 은 파일의 전체 경로입니다. 그것을 내보내려면 사용할 수 있습니다. git show branch:file > exported_file 몇 가지 관련 질문에 대한 VonC 의 답변도 살펴 봐야합니다. Git의 특정 개정판에서 단일 파일을 검색하는 ..

개발관련/Git 2021.12.11

Git 로컬 분기 삭제 실행 취소하는 방법

질문 : 힘내 로컬 분기 삭제 실행 취소 git branch -D branchName 필요한 실험적 변경 사항으로 잘못된 분기를 삭제했습니다. 지점을 어떻게 복구합니까? 답변 git reflog 를 사용하여 분기의 마지막 커밋의 SHA1을 찾을 수 있습니다. 그 시점에서 다음을 사용하여 분기를 다시 만들 수 있습니다. git branch branchName 편집 : @seagullJS가 말했듯이 branch -D 명령은 sha1을 알려주므로 아직 터미널을 닫지 않았다면 정말 쉬워집니다. master2 라는 분기를 삭제 한 다음 즉시 복원합니다. user@MY-PC /C/MyRepo (master) $ git branch -D master2 Deleted branch master2 (was 130d7ba).

개발관련/Git 2021.12.08

병합 된 모든 Git 브랜치를 삭제하는 방법

질문 : 병합 된 모든 Git 브랜치를 어떻게 삭제할 수 있습니까? 나는 많은 Git 브랜치를 가지고 있습니다. 이미 병합 된 분기를 삭제하려면 어떻게합니까? 하나씩 삭제하는 대신 모두 삭제하는 쉬운 방법이 있습니까? 답변 최신 정보: 워크 플로에 가능한 조상이있는 경우 마스터 및 개발과 같은 다른 분기를 제외하도록 추가 할 수 있습니다. 일반적으로 나는 "sprint-start"태그에서 분기하고 master, dev 및 qa는 조상이 아닙니다. 먼저 원격에서 병합 된 로컬 추적 분기를 나열하십시오 (다른 답변에서 제안한대로 -r 플래그를 사용하여 모든 원격 추적 분기를 나열하는 것을 고려할 수 있습니다). git branch --merged 제거하고 싶지 않은 분기가 거의 표시되지 않을 수 있습니다. ..

개발관련/Git 2021.11.26

Git으로 분기점 찾는 방법

질문 : Git으로 분기점 찾기? 브랜치 마스터와 A가있는 저장소와 둘 사이에 많은 병합 활동이 있습니다. 마스터를 기반으로 브랜치 A가 생성되었을 때 내 저장소에서 커밋을 어떻게 찾을 수 있습니까? 내 저장소는 기본적으로 다음과 같습니다. -- X -- A -- B -- C -- D -- F (master) \ / \ / \ / \ / G -- H -- I -- J (branch A) git merge-base (--all) 가 찾은 것이 아닌 개정 A를 찾고 있습니다. 답변 나는 똑같은 것을 찾고 있었고이 질문을 발견했습니다. 물어봐 주셔서 감사합니다! 그러나, 나는 그렇게하지 여기에있는 답변은 아주 당신이 (또는 내가 찾던 것을) 물어 대답을하는 것 발견 - 그들이 제공하는 것 G 대신의 커밋 커밋..

개발관련/Git 2021.11.24

Git은 원격 분기 목록을 고치는 시기

질문 : Git은 언제 원격 분기 목록을 새로 고치나요? git branch --all 사용하면 모든 원격 및 로컬 분기가 표시됩니다. Git은 언제이 목록을 새로 고치나요? 당기기 / 밀기? 그리고 Git Bash를 사용하여 어떻게 새로 고치나요? 답변 원격 분기의 로컬 목록을 업데이트하려면 : git remote update origin --prune (로컬) Git이 알고있는 모든 로컬 및 원격 분기를 표시하려면 git branch -a 출처 : https://stackoverflow.com/questions/36358265/when-does-git-refresh-the-list-of-remote-branches

개발관련/Git 2021.11.17

기존 Git 분기가 원격 분기를 추적하도록 하는 방법

질문 : 기존 Git 분기가 원격 분기를 추적하도록 하시겠습니까? 원격 분기를 추적하는 새 분기를 만드는 방법을 알고 있지만 기존 분기가 원격 분기를 추적하도록하려면 어떻게해야합니까? .git/config 파일을 편집 할 수 있지만 더 쉬운 방법이있을 것 같습니다. 답변 foo 및 원격 upstream 주어지면 : Git 1.8.0부터 : git branch -u upstream/foo 또는 로컬 브랜치 foo 가 현재 브랜치가 아닌 경우 : git branch -u upstream/foo foo 또는 더 긴 명령을 입력하려는 경우 위의 두 가지 명령과 동일합니다. git branch --set-upstream-to=upstream/foo git branch --set-upstream-to=upstrea..

개발관련/Git 2021.11.17

가장 최근 커밋으로 정렬 된 Git 브랜치 목록을 얻는 방법

질문 : 가장 최근 커밋으로 정렬 된 Git 브랜치 목록을 얻으려면 어떻게해야합니까? 맨 위에 "가장 최신"분기가있는 Git 저장소의 모든 분기 목록을 얻고 싶습니다. 여기서 "가장 최신"분기는 가장 최근에 커밋 된 분기입니다 (따라서 하나 일 가능성이 더 높습니다). 나는 주목하고 싶다). Git을 사용하여 (a) 최신 커밋별로 분기 목록을 정렬하거나 (b) 기계 판독 가능한 형식으로 각 분기의 마지막 커밋 날짜와 함께 분기 목록을 가져올 수있는 방법이 있습니까? 최악의 경우, 항상 git branch 를 실행하여 모든 분기 목록을 가져오고 출력을 구문 분석 한 다음 git log -n 1 branchname --format=format:%ci for each one, to get each branch..

개발관련/Git 2021.11.16

원격 Git 브랜치를 생성하는 방법

질문 : 원격 Git 브랜치를 어떻게 생성합니까? 업스트림으로 '푸시'하려는 로컬 브랜치를 만들었습니다. 새로 생성 된 원격 분기를 추적하는 방법에 대한 Stack Overflow에 대한 유사한 질문이 있습니다. 그러나 내 작업 흐름은 약간 다릅니다. 먼저 로컬 브랜치를 만들고 싶고 만족스럽고 브랜치를 공유하고 싶을 때만 업스트림으로 푸시합니다. 어떻게할까요? (내 Google 검색은 아무것도 찾지 못한 것 같습니다). 동료들에게 업스트림 저장소에서 가져 오라고 어떻게 말합니까? 업데이트 Git 2.0을 사용하면 아래에 작성한 더 간단한 답변이 있습니다. https://stackoverflow.com/a/27185855/109305 답변 먼저 로컬에서 브랜치를 만듭니다. git checkout -b # ..

개발관련/Git 2021.11.12

git pull from master에서 개발 브랜치로 가져오는 방법

질문 : git pull from master에서 개발 브랜치로 dmgr2 (development)라는 브랜치가 있고 마스터 브랜치 (라이브 사이트)에서 가져 와서 모든 변경 사항을 개발 브랜치에 통합하려고합니다. 이 작업을 수행하는 더 좋은 방법이 있습니까? 변경 사항을 적용한 후 계획 한 작업은 다음과 같습니다. git checkout dmgr2 git pull origin master 이것은 내 개발 브랜치로 라이브 변경 사항을 가져와야합니까, 아니면 이것이 잘못 되었습니까? 답변 나열된 단계는 작동하지만 더 많은 옵션을 제공하는 더 긴 방법이 있습니다. git checkout dmgr2 # gets you "on branch dmgr2" git fetch origin # gets you up to..

개발관련/Git 2021.11.11

git 브랜치를 명명하는 데 일반적으로 사용되는 관행의 몇 가지 예

질문 : git 브랜치를 명명하는 데 일반적으로 사용되는 관행의 몇 가지 예는 무엇입니까? 나는 몇 달 동안 내 그룹의 CVS 저장소와 상호 작용하는 로컬 git 저장소를 사용하고 있습니다. 나는 거의 신경증적인 수의 가지를 만들었는데, 대부분은 고맙게도 내 몸통에 다시 합쳐졌습니다. 그러나 이름 지정이 문제가되기 시작했습니다. 간단한 레이블로 쉽게 명명 할 수있는 작업이 있지만 각각 고유 한 분기와 병합 상황을 포함하는 3 단계로 수행하면 매번 분기 이름을 반복 할 수 있지만 이로 인해 기록이 약간 혼란스러워집니다. 각 단계에 대한 별도의 설명을 사용하여 이름을 더 구체적으로 지정하면 지점 이름이 길고 다루기 어려워집니다. 여기에서 오래된 스레드를 살펴보면서 이름에 /를 사용하여 분기 이름을 지정할 수..

개발관련/Git 2021.11.03

분기가 지정되지 않은 "git push"의 기본 동작

질문 : 분기가 지정되지 않은 "git push"의 기본 동작 다음 명령을 사용하여 원격 지점으로 푸시합니다. git push origin sandbox 내가 말하면 git push origin 다른 브랜치에서도 변경 사항을 푸시합니까, 아니면 현재 브랜치 만 업데이트합니까? master , production 및 sandbox 세 가지 분기가 있습니다. git push 문서는 이것에 대해 명확하지 않으므로 이것을 명확하게 설명하고 싶습니다. git push 명령을 정확히 업데이트하는 분기 및 원격은 무엇입니까? git push git push origin origin 은 원격입니다. git push [remote] [branch] 가 해당 분기 만 원격으로 푸시한다는 것을 이해합니다. 답변 git 구성..

개발관련/Git 2021.10.20

Git 브랜치의 가장 가까운 부모를 찾는 방법

질문 : Git 브랜치의 가장 가까운 부모를 찾는 방법은 무엇입니까? 다음과 같은 커밋 트리가있는 다음 로컬 저장소가 있다고 가정 해 보겠습니다. master --> a \ \ develop c --> d \ \ feature f --> g --> h master 는 내 최신 안정 릴리스 코드 이고 develop 은 '다음'릴리스 코드 이며 feature 은 develop 준비중인 새로운 기능 입니다. 후크를 사용하여 원격 리포지토리에서 할 수 있기를 원하는 것은 f develop HEAD의 직접적인 자손이 feature 이 거부되는 것입니다. d git rebase 되었기 때문에 커밋 트리는 다음과 같습니다. master --> a \ \ develop c --> d \ \ feature f --> g..

개발관련/Git 2021.10.19

package.json에서 git URL을 사용하는 분기 또는 태그에 의존할까?

질문 : package.json에서 git URL을 사용하는 분기 또는 태그에 의존합니까? 버그 수정이있는 노드 모듈을 분기했고 버그 수정이 병합되고 릴리스 될 때까지 기능 브랜치에서 수정 된 버전을 사용하고 싶다고 가정 해 보겠습니다. 내 package.json dependencies 에서 고정 버전을 어떻게 참조합니까? 답변 npm 문서에서 : git://github.com//.git# git://github.com//.git#feature\/ NPM 버전 1.1.65부터 다음을 수행 할 수 있습니다. /# 출처 : https://stackoverflow.com/questions/16350673/depend-on-a-branch-or-tag-using-a-git-url-in-a-package-json

개발관련/Git 2021.08.13

Git에서 원격으로 브랜치 이름 바꾸기

질문 : Git에서 원격으로 브랜치 이름 바꾸기 git:// 액세스 권한 만 git branch -m 하여 로컬에서 수행하는 것과 동일한 방식으로 해당 저장소의 분기 이름을 바꿀 수있는 방법이 있습니까? 답변 원하는 이름으로 새 로컬 브랜치를 만들고 원격 브랜치에 푸시 한 다음 이전 원격 브랜치를 삭제하기 만하면됩니다. $ git branch new-branch-name origin/old-branch-name $ git push origin --set-upstream new-branch-name $ git push origin :old-branch-name 그런 다음 이전 브랜치 이름을 보려면 저장소의 각 클라이언트가 다음을 수행해야합니다. $ git fetch origin $ git remote pr..

개발관련/Git 2021.07.15

현재 Git 작업 트리에서 로컬 (추적되지 않은) 파일을 제거하는 방법

질문 : 현재 Git 작업 트리에서 로컬 (추적되지 않은) 파일을 제거하는 방법 현재 작업중인 트리에서 추적되지 않은 로컬 파일을 어떻게 삭제합니까? 답변 git- clean-작업 트리에서 추적되지 않은 파일 제거 개요 git clean [-d] [-f] [-i] [-n] [-q] [-e ] [-x | -X] [--] …​ 기술 현재 디렉토리에서 시작 하여 버전 제어를받지 않는 파일을 재귀 적으로 제거하여 작업 트리를 정리합니다. 일반적으로 Git에 알려지지 않은 파일 만 제거되지만 -x 옵션이 지정되면 무시 된 파일도 제거됩니다. 예를 들어 이는 모든 빌드 제품을 제거하는 데 유용 할 수 있습니다. 선택적 ... 인수가 제공되면 해당 경로 만 영향을받습니다. -n 옵션을 사용하여 삭제할 항목을 표시하는..

개발관련/Git 2021.07.14
728x90
반응형